Description

RESPONSIBILITIES:
Leads teams in the development of products, solutions, and processes.
Collaborate with other engaged, friendly, principles-first-thinking oriented engineers to understand customer use cases and implement core engineering capabilities.
Strives to improve efficiency and sustainability of processes and product designs, and to improve quality.
Mentor Engineers to help them learn and apply best practices in software development. 
Work with the Engineering Manager to prioritize the product backlog and to help assign stories to other engineers. 
Operate across multiple layers of the stack to design and build fault-tolerant distributed systems that optimize a fleet of fulfillment infrastructure and robots.
Inventing new features, designing, developing and deploying reliable applications
Participate in software architecture and design. 
Translating business and functional requirements into deliverable software and customer experience
Develop tools to test and analyze complex systems, including those deployed in production, and dig into critical pieces of distributed systems like logging, tracing, metrics.

BASIC QUALIFICATIONS:
7+ years of non-internship professional software development experience
Programming experience in Java (Core Java and Frameworks like Spring / SpringBoot) including object-oriented design
2+ years of experience in leading and mentoring teams
1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems
1+ years of cloud experience (AWS / Azure / GCP)
1+ years of DevOps - CI/CD 
Strong in Data Structures and Algorithms
Understand the problem and choose the right Data Structures and Algorithms to use 
Handle Time Space complexity
Strong understanding of System Design. 
Ability to explain the trade-offs in certain design decisions
Explain complex technical concepts in an easy-to-understand way

Education

Bachelor's degree