Full Stack Developer

Job description

This Full Stack Developer job description template is tailored to suit the needs of your organization and attract highly skilled professionals. We have modified the template to highlight the key responsibilities and requirements for the role, ensuring that it appeals to talented developers

Hire Full Stack Developer
a man sitting on a bean bag with a laptop and a cup of coffee. a man sitting on a bean bag with a laptop and a cup of coffee.
an image of a white striped background swift icon in a circle

Job brief

Here is a job description for a Full Stack Developer

The FullStack Developer leads the software development team in designing and implementing the development of our consumer-facing, high-traffic, e-commerce, and learning management web platform. He/she will spearhead the best software development practices. This includes design principles, development processes and tools, testing methodology, deployment process, and our platform's ongoing support and maintenance. The responsible person will develop standards for the team to follow, assist teams as needed, and write code for various critical modules of the platform.

Duties And Responsibilities:

  • Develop software solutions by identifying user and system requirements.
  • Determine operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
  • Document and demonstrate solutions using documentation, flowcharts, layouts, diagrams, charts, code comments, and clear code.
  • Propose and enforce best practices for the software development lifecycle.
  • Propose coding standards and guidelines for the team to follow and enforce them through the code review process.
  • Supports and develops software engineers by providing advice, coaching, and educational opportunities.
  • Collaborates with team to brainstorm and create new ideas and solutions.
  • Grows engineering teams by interviewing, recruiting, and hiring.
  • Designs the new web platform where security is also a design consideration.
  • Ensure the platform is designed and coded to streamline ongoing deployment, support, and maintenance following the CI/CD process.
  • Propose and set platform performance critical metrics to monitor and measure the platform’s performance in terms of uptime, speed, etc.
  • Perform technical analysis to support effective and efficient development efforts.
  • Write code for crucial modules of the platform.
  • Design testing methodology, including automated unit testing of the platform modules. He/she should understand the basics of testing.
  • Communicate on project/task status clearly and effectively with the management team, development team, and project managers.
  • Moves fast, biased toward action, and follows the cycle of coding, iterating, testing, deploying, and optimizing websites.

Qualifications:

  • 7+ years of software development experience.
  • Experience designing and architecting high-traffic consumer web applications (e.g., SaaS, e-commerce).
  • 5+ years of solid expertise in Node.js application design and development (ES6+ JavaScript & TypeScript).
  • 3+ years of experience in modern responsive UI development using TypeScript, Vue3, and HTML5/CSS3.
  • Strong experience in building RESTful web services.
  • Hands-on experience with MySQL table design, querying, indexing, and debugging.
  • At least three years of hands-on experience and understanding of Microservice architecture based on 12-factor application development practices.
  • Experience working with GIT versioning and best security and development practices.
  • Experience working with message queues (e.g., RabbitMQ, SQS) and distributed caching (e.g., Memcached, Redis).
  • Experience building solutions on top of AWS, such as ECS, S3, Lambda, API Gateway, and others.
  • Strong attention to detail and excellent problem-solving skills.
  • Experience working with DevOps and building pipelines (e.g., CI, CD).
  • Hands-on experience with the agile development process.
  • Experience in Python is preferred.
  • Strong knowledge of containerization (e.g., Docker, Kubernetes).

Working conditions:

This role is a full-time, salaried, and remote position. Work hours for this position are flexible and will be performed from a home office.