Staff Software Engineer - Applications (Java)

Organization: 
Cepheid - US
Job Location: 
Sunnyvale, CA
Job Description: 

This is a great opportunity to join the high performance software development team in Cepheid. As a Staff Software Engineer, and a member of the Software Applications team, you will work on medical diagnostic applications predominantly in the Java language running on a Windows desktop. You will work in a fast-paced, dynamic environment. We are looking for a well-rounded, collaborative, creative individual with a knack for problem solving, a strong sense of software design and solid coding skills. You should be comfortable juggling multiple projects, and working both independently and as a member of a team.

- Part of a software engineering team that develops software for commercial products, manufacturing test systems and in-house research
- Provide technical leadership in the Applications development team, translating software architecture into design and implementation
- Develop architecture, design and prototypes for platform technologies and UI frameworks
- Hands-on development: design, prototype, implement and maintain software applications
- Projects will involve GUI development, back-end logic development, as well as mathematical data analysis, data acquisition and data storage
- Work well in a team environment, as well as with internal and external customers
- Work with the team to continue to optimize the software development process while maintaining a high quality product; ensure standards and procedures are being adhered to

- A BS in Computer Science, Computer Engineering or equivalent, and a minimum of 12 years of working experience in Java
- Ability to work across all layers of the application, from back-end databases through to the UI
- Working knowledge of database relational design, schema design and data normalization
- Exceptional design and programming skills; solid understanding of concurrency, threading, and data structures
- Demonstrated knowledge of automated testing (eg. JUnit) and experience with test-driven development
- Experience in Gap Analysis of existing software to current and future designs; ability to evaluate criteria and exercise judgment in selecting techniques to obtain results
- Ability to handle multiple, time sensitive projects and activities simultaneously and effectively
- Ability to be self-motivated, proactive, curious, accountable and flexible
- Ability to communicate complex technical issues and design to peers and cross-functional teams including scientists, technical support and other engineers.
- Ability to produce thorough documentation that meets regulatory/methodology requirements

To apply for this position, please CLICK HERE