Technical Program Manager

Technical Program Manager

7-10 years
Not Specified

Job Description

Job Description :
Job summary
Amazon Lab126 is an inventive research and development company that designs and engineers high-profile devices like the Kindle family of products. Lab126 began in 2004 as a subsidiary of, Inc. Since then, we have worked to produce best-selling e-readers and tablets, as well as new inventions like Fire TV and Echo. What will you help us create
Work hard. Have fun. Make history.
The Role:
You directly manage a team working to deliver software to meet customer, business, and/or technology needs. You own existing software in a segment of a business, functional area, or technology (e.g., a set of containers for Beanstalk). As the owner, you are accountable for the customer experience, project prioritization, software quality, product maintainability, and the growth of the engineers that report to you. You are mindful of each SDE's areas for growth and you actively work to make sure they are assigned to projects to develop and stretch their skills. You understand the larger picture (i.e., customer requirements, business process, opportunities, and/or problems to be solved). You may be new to management and need guidance. You are learning how to be strategic and seek guidance on long-term direction. You partner with your manager, business stakeholders, vendors, TPM, Senior/Principal Engineers, etc. to clarify the team mission, vision, and priorities. You utilize the working backwards process. You may partner with hardware engineering and factory operations teams. You make sure the team thinks and implements globally. You help them see how their work contributes to organization goals.
You own the day-to-day management of software development. You understand development methodologies (e.g., Scrum ) and work with your team to adopt the best approach to yield optimal team productivity, innovation potential, as well as fit the needs of the product being developed (for those working with hardware teams). You effectively prioritize deliverables. You stay connected and resolve blockers that could derail development schedules. You facilitate SDE connections to customers, Senior SDEs/Principal Engineers, and subject matter experts. You help your SDEs grow by encouraging them to contribute to cross-team technical discussions, supporting their ideas, and empowering them to make decisions. You partner effectively with TPMs and other supportive roles. You make sure both business and engineering requirements are well-defined. You are able to dive deeply into technical details (e.g., dependencies, design choices, operability) and can transform raw thoughts into clear direction. You partner with SDEs to scope development efforts and identify risks. You protect your team from being over-committed, recognizing that their ability to meet every expectation will at times be constrained. You proactively communicate priorities, development status, and any team challenges to customers, TPMs, stakeholders, and management. You ensure everyone is aware of how decisions are made and are notified when schedules change.
You have a solid understanding of the design approaches and industry technologies utilized within your team. You understand the overall architecture and foster great working relationships with any teams that share that architecture. You help make trade-offs balancing the larger picture (e.g., resourcing, business goals, user experience, dependency impacts, efficiency, availability, etc.) against the needs of building, maintaining, refactoring, scaling, and extending features to properly support the life of the technology. You make sure your SDEs are able to spend adequate time on design and you seek their input on technology recommendations. In the absence of a Senior SDE, you are able to review software code (for style, readability, quality, and maintainability).
You drive constructive technical discussions and audit appropriately to prevent the consequences of poor technology decisions. You are able to recognize when a proposed design is too complex or risky (and arrange for additional reviews with Senior/Principal Engineers).
Basic Qualifications :
. Bachelor's degree in Computer Engineering or similar technical field.
. 7+ years experience hands-on software development
. Experience with Linux development environment.
. 7+ years of experience in one or more specific technical areas such as Boot, USB, Graphics, eMMC, Audio, HDMI, frame buffer, System performance, wireless devices.
. Experience with Android and Linux development on kernel, device drivers, or frameworks
Preferred Qualifications :
. knowledgeable on professional software engineering & best practices in software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
. Ability to take a complex and challenging project from scoping requirements through actual launch of the project.

About Amazon

Job Source :

Similar Jobs

People Also Considered

Career Advice to Find Better

Simple body text this will replace with orginal content