Principal Back End Engineer
As a Principal Back End Engineer, you will be a key technical leader within our client's engineering team, driving the design, development, and optimization of robust back-end systems crucial to the company’s operational success and scalability. This role combines in-depth coding expertise, architectural design, and strategic leadership, ensuring that all back-end solutions are scalable, efficient, and aligned with technical and business objectives. The Principal Back End Engineer will collaborate with cross-functional teams, mentor junior engineers, and play a critical role in shaping the technical roadmap for their back-end infrastructure.
In this role, you will build highly scalable serverless AWS applications. You will work closely with product managers, front-end engineers, and other stakeholders to design and implement solutions that leverage modern technologies and best practices. Your extensive experience in serverless architecture, along with your deep knowledge of AWS Services like CloudFront, S3, DynamoDB, AppSync, Lambda, EventBridge, and StepFunctions, will be instrumental in ensuring the reliability and efficiency of our technical infrastructure.
Responsibilities
• Lead the design and development of scalable, high-performance back-end services and APIs, ensuring seamless integration with front-end systems and third-party applications.
• Optimize back-end build pipelines and deployment processes, enhancing system performance, reducing technical debt, and improving overall operational efficiency.
• Define and implement a comprehensive testing strategy for back-end systems, including unit, integration, and load testing, to ensure robust code quality and system reliability.
• Collaborate with security teams to identify and address potential vulnerabilities, incorporating security best practices into the back-end development lifecycle to protect data and maintain compliance.
• Oversee the architectural design and deployment of back-end solutions, ensuring they meet technical and business requirements for scalability, performance, and reliability.
• Work closely with product managers, front-end engineers, and other stakeholders to define the technical roadmap and align back-end development with the company's broader product strategy.
• Mentor and guide back-end engineers, fostering a culture of continuous learning, innovation, and technical excellence within the team.
• Drive technical discussions and decision-making processes, offering expertise on back-end architecture, design patterns, and industry best practices.
• Conduct thorough code reviews, ensuring adherence to coding standards and the delivery of maintainable, scalable back-end solutions.
• Take ownership of complex back-end projects, managing timelines and proactively identifying and addressing potential risks or issues to ensure timely and successful delivery.
• Contribute to the evolution of back-end development processes by introducing new tools, methodologies, and practices to enhance team efficiency and software quality.
Desired Qualifications
• Proven track record of designing and delivering high-quality, scalable back-end systems, with a strong foundation in serverless architecture, performance optimization, and distributed computing.
• Strong experience in designing and implementing GraphQL APIs.
• Extensive experience with DynamoDB, Dynamo Streams, and single table design.
• Exceptional leadership and mentoring capabilities, with a history of guiding engineering teams to deliver high-performance, secure, and reliable back-end services.
• Excellent verbal and written communication skills, with the ability to clearly articulate complex technical concepts to technical and non-technical stakeholders.
• Proficiency in implementing best practices for back-end security, including knowledge of encryption, authentication mechanisms, and secure data handling.
Desired Education & Experience
• Bachelor’s degree in Computer Science, Engineering, or a related field; Master’s degree preferred.
• 10+ years of professional experience in back-end software development, focusing on designing and deploying scalable systems.
• 5+ years of experience in a senior or lead engineering role, demonstrating strong leadership and project management skills.
• Extensive experience with back-end technologies and frameworks, including Node.js, Java, Python, and major database systems (e.g., PostgreSQL, MongoDB).
• Proven expertise in cloud platforms (e.g., AWS, Azure, Google Cloud) and experience with CI/CD tools (e.g., Jenkins, GitLab CI).
Desired Hardware & Software Competency
• Proficiency in back-end development environments and tools, including IDEs like IntelliJ IDEA, Visual Studio Code and debugging tools for efficient coding and troubleshooting.
• Extensive experience with version control systems, notably Git, for managing code in large-scale, multi-environment back-end projects and facilitating collaboration.
• Expertise in CI/CD pipelines using tools such as GitHub Actions, Storybook, and Chromatic for automating build processes, testing, and deployment of back-end services.
• Deep knowledge of AWS services, including experience with serverless architectures using AppSync, DynamoDB, S3, and EventBridge.
• Experience with performance monitoring and logging tools, including Sentry and CloudWatch, to ensure system stability, optimize performance, and manage application health.
• Strong understanding of back-end security protocols, including secure coding practices, encryption techniques, and access control mechanisms to protect sensitive data and ensure compliance.