Senior Software/Firmware Engineer

Employment Opportunities
We are a small, well-established, and steadily growing company, and have maintained an atmosphere that combines personal challenge with respect for the individual. Everyone works hard and we expect a lot from each other in terms of intelligence, initiative, and integrity.

We enjoy the excitement of a rapidly growing company as well as the economic security and employee benefits of a stable, established organization. In addition to competitive base salaries and a comprehensive benefits package, we share ownership of the company. All employees receive stock options at hire and are eligible for the 401(k) Plan. In addition, we promote a flexible working environment, and our work hours are as flexible as the requirements of a given job permit.

We try to attract a wide variety of smart, capable individuals who pay attention to detail and work well with customers and fellow teammates.


Tracking Code
1205
Job Description

Summary:

This position is responsible for designing, implementing and supporting the software and firmware for new and existing products.

Reporting:  Reports to the Software Development Lead and VP of Engineering

Accountabilities & Activities:

  • Participate in the design and implementation of software frameworks and applications for instrument control. Demonstrate fast learning skills, understanding of software patterns and architectures and abilities to apply these architectures in new projects.
  • Participate in embedded software development projects. Demonstrate ability to understand, evolve and maintain current real-time development platform. Play an essential part in the new embedded development platforms.
  • Guide and mentor more junior software developers and participate in design and code reviews, give technical feedback and recommendations when needed.
  • Collaborate with product management team and customers in refinement of software requirements and generating software specifications and design documents.

Position Requirements:

  • B.S. / M.S.  degree in Computer Science, or equivalent
  • 5+ years experience with development in Microsoft Windows environment required.
  • Experience with embedded software development environments (including RTOS, Windows CE, embedded Linux and others) is required. Experience with IAR – based tools is a plus.
  • Experience with C compilers for real-time systems is required. Experience with ARM-based embedded controller architectures is a plus. Experience with digital design and Assembly language is a plus. Experience with motion control, robotic systems and digital signal processing is a plus. Experience with hardware debugging tools (emulators, logic analyzers etc…) is a plus.
  • Experience with Microsoft component technologies, COM, Microsoft .NET framework and Microsoft C#.
  • Experience in software architecture and high – level design, familiarity with object-oriented methodologies required.  Experience using established software engineering methodologies and practices is expected. 
  • Experience with software configuration tools and experience working under defined software process is expected.
  • Strong analytical and problem solving skills, and experience applying these skills to resolve potential issues.
  • Able to function effectively in a fast paced environment, handle multiple tasks simultaneously, and meet deadlines.
  • Ability to work both independently and as a team member under minimal supervision and direction.
  • Excellent written and verbal communication skills.
Job Location
Sunnyvale, CA, US.
Position Type
Temp-To-Hire

To apply for this position, go directly to the Promega Careers Website

   

 
Promega Corporation