Job responsibilities
- Own and deliver end-to-end cutting-edge solutions leveraging the latest technologies and the best industry practices
- Drives decisions that influence the product design, application functionality, and technical operations and processes that influence teams’ resources, budget, tactical operations, and the execution and implementation of processes and procedures
- Serves as a function-wide subject matter expert while leading technical meetings, ensuring that architectural decisions align with the broader organizational goals and strategy
- Engage with business stakeholders to break down complex and ambiguous problems into technical specifications that an engineering team can implement under your guidance
- Champion engineering practices; Improve the effectiveness of the Engineering teams through coaching, mentoring and resolution of impediments
- Actively contributes to the engineering community as an advocate of firmwide frameworks, tools, and practices of the Software Development Life Cycle while ensuring successful collaboration across teams and stakeholders of various domains of expertise
- Influences peers and project decision-makers to consider the use and application of leading-edge technologies
- Regularly provides technical guidance and direction to support the business and its technical teams, contractors, and vendors
- Develops secure and high-quality production code, and reviews and debugs code written by others to create complex and scalable coding frameworks using appropriate software design frameworks
- Provides input to leadership regarding budget, approach, and technical considerations to improve operational efficiencies and functionality for the team
- Adds to the team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
- Formal training or certification on designing and building large-scale distributed systems concepts and 5+ years applied experience
- Extensive practical experience in designing and building large-scale distributed systems with high degree of availability, fault-tolerance & scalability in cloud using Kubernetes, Service mesh, Kafka, API Gateways, SQL/NoSQL DB, Java ; AWS patterns for big data processing, stream processing, application serving
- Being comfortable with ambiguity. We are building something new. Things change quickly. We need you to learn and establish patterns quickly
- Ability to tackle design and functionality problems independently; being curious and comfortable with exploring new domains with the ability to consider both the technology & product angle
- Ability to see the long term. We don’t want you to sacrifice the future for the present. We want you to choose technologies and approaches based on end goals
- Showing a desire to teach others and share knowledge. We aren’t looking for hero developers, more for team players. We want you to coach other team members on coding practices, design principles, and implementation patterns
Preferred qualifications, capabilities, and skills