Software Engineer - Systems
Job description
Imagine what you can do here. App*** is a place where extraordinary people gather to do their lives best work. Together we create products and experiences people once couldn't have imagined, and now, can't imagine living without. It's the diversity of those people and their ideas that inspires the innovation that runs through everything we do. Description App*** INC has the following available in Cupertino, California and various unanticipated locations throughout the USA. Research, design, develop, implement, test and debug video decoder firmware and driver for use in hardware accelerated video playback. Study video decoder technical reference manuals and various codec specifications in order to implement video decoder driver and firmware interfaces to support video playback on App*** devices. Design and implement software to prepare decode commands in order to drive video decoder hardware. Review software source code to identify defects and performance issues. Run tests and regression to verify software and hardware implementations. Analyze diagnostic reports and reconstruct failure scenarios to identify causes. Work with App***'s design, platform architecture, platform emulation and other verification teams to bring-up video decoder firmware and driver on new hardware platforms. Work closely with other members in the team on mobile and embedded platforms that combine cutting-edge software engineering techniques with next-generation hardware. 40 hours/week. At App***, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $187,741 - $272,100/yr and your base pay will depend on your skills, qualifications, experience, and location. PAY & BENEFITS: App*** employees also have the opportunity to become an App*** shareholder through participation in App***’s discretionary employee stock programs. App*** employees are eligible for discretionary restricted stock unit awards, and can purchase App*** stock at a discount if voluntarily participating in App***’s Employee Stock Purchase Plan. You’ll also receive benefits including: Comprehensive medical and dental coverage, retirement benefits, a range of discounted products and free services, and for formal education related to advancing your career at App***, reimbursement for certain educational expenses - including tuition. Additionally, this role might be eligible for discretionary bonuses or commission payments as well as relocation. Learn more about App*** Benefits: https://www.App***.com/careers/us/benefits.html. Note: App*** benefit, compensation and employee stock programs are subject to eligibility requirements and other terms of the applicable plan or program. Preferred Qualifications N/A Minimum Qualifications Master’s degree or foreign equivalent in Electrical and Computer Engineering or related field. Experience and/or education must include: Using C and C++ programming languages to implement real-time embedded applications Experience in HW and SW interaction, including usage of microprocessors or microcontrollers and real-time application development. Testing firmware functionality through automation toolchains, Python, and C or C++ Unit, regression and integration testing Reviewing C/C++ firmware code designed for embedded real-time applications Using scripting languages and tools: Bash, and Python Experience with version control systems Git, and Perforce Synthesizing functional requirements from technical reference manuals and specifications Debugging software using an interactive debugger, like lldb, to reproduce and triage issue in software and firmware applications