Senior Software Engineer (GUI)

Cepheid - US
Job Location: 
Sunnyvale, California
Job Description: 

Senior GUI Software Engineer working on a medical diagnostic application predominantly in the Java language running on desktop and web applications. You will be a member of the Software Applications team. We are looking for a well-rounded, collaborative, software engineer with a knack for GUI designs, problem solving, a strong sense of software design and solid coding skills. We have a fast-paced, dynamic environment and you should be comfortable juggling multiple projects, working both independently and as a member of a team.


* You will prototype, design, implement and maintain the software application.
* You will be part of a software engineering team that develops software for commercial products, manufacturing test systems and in-house research.
* Your projects will involve GUI development using Java Swing, web applications, back-end logic development, as well as mathematical data analysis, data acquisition and storage.
* You will be responsible in developing GUI applications and frameworks.
* You will participate in cross-functional project teams with scientists, technical support and other engineers.
* You must work well in a team environment, and also work well with internal and external customers.
* You need to be sensitive to the voice of the customers.
* You will adhere to software development and source control processes.


* A BS in Computer Science, Computer Engineering or equivalent, and a minimum of 8 years of working experience in Java
* Experience designing and developing graphical user interfaces (GUIs)
* Experience developing GUI frameworks
* Experience developing web applications
* Exceptional Java object oriented design and programming skills
* Solid understanding of concurrency, data structures, and data caching techniques
* Demonstrated knowledge of automated testing (JUnit) and experience with test-driven development
* Exceptional debugging and profiling skills
* Experience in Gap Analysis of existing software to current and future designs
* Desire to constantly improve existing systems and methodologies
* Ability to handle multiple, time sensitive projects and activities simultaneously
* Ability to fluidly shift focus and priorities based on changing business needs
* Ability to be self-motivated, proactive, curious, responsible and flexible
* Ability to evaluate criteria and exercise judgment in selecting techniques to obtain results
* Ability to communicate complex technical issues and design to the peers
* Ability to produce thorough documentation that meets regulatory/methodology requirements
* Experience with developing and maintaining software requirements and software design documentation

Apply Here

Contact Information: 

Human Resources