Senior Software Engineer
ExternalPrepare for this interview
EliteAI-generated questions, company research, and talking points tailored to this role
About the role
As a Senior Software Engineer, you will play a critical role in driving the development of complex, multi-system features with a high degree of autonomy. You'll independently own feature delivery from design through deployment, ensuring quality and scalability while mentoring junior engineers and fostering a culture of technical excellence. You'll work closely with product and engineering teams to influence requirements during refinement and sprint planning, helping shape solutions that meet both business and technical goals. Your deep understanding of multiple frameworks and end-to-end workflows will enable you to apply advanced techniques to large-scale features and contribute meaningfully to system design and architecture. This role requires strong adherence to established development best practices, including code quality, testing, documentation, and CI/CD processes. Leading by example, you will be championing engineering standards and continuously improving how software is built and delivered. ESSENTIAL DUTIES & RESPONSIBILITIES End-to-End Feature Ownership: Independently design, develop, and deliver moderate to high complexity features across web and mobile platforms, ensuring quality, scalability, and alignment with business goals. Front-End Development: Build responsive and performant user interfaces using React and React Native, integrating seamlessly with backend services and ensuring consistent user experience across platforms. Backend Engineering: Implement robust backend systems using C#, TypeScript, Ruby on Rails, and RESTful APIs. Develop and maintain microservices that support distributed, scalable applications. Cloud & Infrastructure: Leverage AWS services including ECS, EKS, Lambda, API Gateway, S3, and CloudWatch to deploy and monitor applications. Use Terraform for infrastructure-as-code and manage event-driven architectures with Debezium, Kafka, and SNS/NServiceBus. Database Development: Design, query, and optimize relational databases using SQL and PostgreSQL, ensuring data integrity and performance across services. System Design & Architecture: Contribute to system-level design decisions, applying advanced engineering techniques and understanding of end-to-end workflows to build scalable, maintainable solutions. Mentorship & Collaboration: Mentor junior engineers, conduct code reviews, and foster a culture of continuous learning and technical excellence. Collaborate cross-functionally with product managers, designers, and other engineering teams to refine requirements and plan sprints. Process Leadership: Champion and adhere to established development best practices, including CI/CD, automated testing, version control, and documentation standards. Drive improvements in team processes and engineering efficiency. Technical Strategy: Influence technical direction by evaluating new frameworks, tools, and patterns. Ensure alignment with organizational standards and long-term scalability.