Job Description :

Position: Embedded Software Application Developer
Location: Torrance, CA
Duration: 3 years

Plans, coordinates, performs product design, testing and/or analysis work for a complete project of broad scope or for a significant portion or a sub-system of a major and diverse project. Operates in a team environment and may act as lead person, providing technical leadership and design solutions. May assign, coordinate and review portions of the work to other engineers and support personnel. Provides technical consultation and a knowledge base. Recognized as an expert across a product line.

Expert user of critical technology. Develops new applications of technology for product development. Analyzes assignments and determines engineering specifications which must be fulfilled for complex problems or projects of moderate scope. Produces and/or evaluates possible design solutions to improve cost, quality and performance based on specialized knowledge of engineering applications. This may include possible involvement of other functional engineers, supply management and/or supplier personnel. Compiles and furnishes necessary information (engineering decisions and reports of pertinent design analyses data) to document the design solution required for building of prototypes and adoption of the design with possible involvement of other functional engineers, supply management and/or supplier personnel. Provides technical support to marketing, manufacturing, quality and supply management organizations. Develops and/or executes test or analysis plan for product verification and validation. Leads in resolution of product-line based difficult technical issues whether within the company or with outside suppliers.

Specific Position Requirements:
Contingent will be writing software for GPS receivers.

- 5+ years of experience as a software developer
- 3+ years with embedded software
- Knowledge of operating system fundamentals; IPC, multithreading, resource management in embedded systems
- Proficiency with C/C++; C++ preferred
- Extensive development experience with at least one of the following: TCP/IP, USB, CAN, SPI, I2C, RAM, FAT, Bootloader, flash memory
- Strong written and verbal communication skills
- Highly self-motivated and the ability to work both independently and in a team environment
- Bachelor of science in computer science, electrical engineering, or equivalent

Desired Skills:
- Experience with ARM processors
- Knowledge of software design patterns
- Experience with agile development
- Experience with software unit testing
- Experience with version control systems
- Knowledge of GNSS fundamentals