About the job
The Senior Full Stack Engineer will be responsible for designing, implementing, and optimizing robust functionality across the stack in our web application. The ideal candidate will have a strong background in software engineering, extensive experience with full-stack development, particularly with Node.js and React, and a desire to solve complex technical challenges. They will also have a track record of leading high-impact projects and accelerating the team's success.
Basic Qualifications:
- 8+ years of experience working with a front-end JavaScript framework (React preferred, Angular is a plus) and a back-end framework (Node.js preferred, Laravel is a plus)
- Strong communication and interpersonal skills
- Excellent problem-solving skills with keen attention to detail
- Proven experience in taking ownership of complex technical problems and implementing solutions that significantly improve the maintainability, performance, and reliability of the codebase
- Deep understanding of coding best practices and the ability to guide a team of engineers in adhering to these patterns
- Leadership experience on teams responsible for customer-facing web applications
- Proven history of working with geographically distributed Agile teams and delivering code frequently
- Working knowledge of databases (e.g., MySQL, MongoDB), web servers (e.g., Apache, Nginx, Cloudfront), and UI/UX design
Preferred Qualifications:
- Familiarity with containerization technologies
- Extensive experience with Node.js and React applications
- Experience creating reusable React components
- Experience with a UI Framework like Material UI
- Experience with greenfield API design
- Experience evolving software architecture by migrating from one tech stack to another
Key Responsibilities:
- Collaborate with product owners to estimate and develop complex project plans
- Propose innovative ideas for operational and process improvements and implement them across teams
- Create detailed technical design documentation
- Measure performance and implement optimizations
- Evaluate multiple technical avenues and determine a course of action using a data-driven and thoughtful approach
- Conduct code reviews and provide constructive feedback to ensure high-quality code standards are maintained
- Coach and mentor team members, fostering a culture of learning and growth
- Own large projects and unblock teammates throughout the development process
- Troubleshoot and debug issues reported by QA or customers, providing timely resolutions
- Ensure new code is maintainable and thoroughly tested
- Advocate for changes in architecture based on new technologies, business context, and future roadmaps