Senior Software Engineer Scientific Desktop Applications in C# Job in Silicon Valley/San Jose 95134, California Us
Senior Software Engineer Scientific Desktop Applications in C#
Designing and developing applications used by scientists, lab directors, and chemists that are engaged in extending the health profile for all of us is a dream job for most. We are looking for the passionate to join our senior applications team and produce the applications that enable scientists and lab technicians to make critical decisions. This is typically done through the PC that is shipped with mass spectrometers and from the scientist’s desktop workstation. The mainstream use of capacitive touch, cloud computing, and smartphones for monitoring network elements is providing us the opportunity be the market leader in ease-of-use instruments. We are looking for the passionate to help us help others who heal the world.
The Senior Software Engineer (SSE) – Scientific Desktop Applications in C# is part of the development team engaged to construct solutions for one or more vertical markets. Possessing a natural curiosity for science and armed with software engineering skills using the Microsoft Technology stack, the SSE is both an individual contributor and a skilled team player. Working within the team you will assist in the definition and design of new applications while looking toward integrating value added portions of legacy applications into these cutting edge desktop applications.
Qualified Senior .NET Developer candidates will have 5+ years designing and building successful Windows products with strong OOD/OOP skills, and experience applying modern design patterns, experience with .NET architecture (CLR, GC, and C# programming), WPF, high-performance multi-threading in Win32 and .NET, working knowledge of MFC, ATL, STL and COM technologies, leadership experience including the ability to estimate, plan, lead and execute complex technical projects, a general knowledge of "Under the hood .NET technologies", able to explain the differences between Reference Types and Value Types in C#, differences between Attributes and Properties in C#, the number of ways you can use thread in C#, attributes, delegates, difference between Class and Structure Basic Interface Classes, threading in C#, thread pools and with exceptional complex problem solving skills, strong analytical skills, and excellent written and verbal communications skills, bright candidates who enjoy solving complex problems.
This position will provide an opportunity to utilize and enhance your skills with the following technologies:
- C# with .Net 4.0
- Windows Presentation Foundation (WPF)
- Windows Workflow Foundation (WF)
- Windows Communication Foundation (WCF)
- Visual Studios 2010 and Team Foundation Server 2010
- SQLite
Responsibilities:
- Evolutionary Architecture – using scientifically qualified software components as a base, develop additional code and assemble modules to completion.
- Participate in voice of customer engagement to ensure “engineering understanding” of customer desired outcomes.
- Work with other software team members, the software test group and applications personnel to deliver complete and high quality software products to customers, especially Windows-based applications, according to schedules and specifications
- Work in cross functional teams to help set the direction of the next generation application software
- Communicate effectively with marketing and customers to troubleshoot problems and collect change requests
- Refactor code as required
- Mentor and provide direct support to junior engineers
- Expected to take on leadership responsibilities as required. These responsibilities can include creation of documentation, project timelines, assignment and monitoring of tasks assigned to engineering staff and the maintenance of other artifacts needed to support our quality system
Minimum Qualifications/Skills:
- Minimum of five years’ experience developing commercial software required. Experience with at least two complete software development product life cycles from concept to development and product testing and final release required.
- Outstanding Mass Spec scientists (PhD) with demonstrated software development skills will be considered in lieu of five years commercial software development experience.
- Experience developing software with C# and .Net is required
- Experience building software systems for data management, designing and implementing high quality solutions is expected
- Strong organizational skills to work with cross-functional teams in defining project requirements is expected
- Strong written and verbal communications skills are essential
Desired qualifications/skills:
- Understanding of chromatographic and spectroscopic data processing methods and software applications development for these is preferred but not required
- Significant consideration will be given to candidates with experience in the analytical instruments business, especially mass spectrometers
- Strong analytical skills and experience in one of the areas of biotechnology, bioinformatics, signal processing, or analytical chemistry
Education:
- Minimum of Bachelor’s degree in Computer Science, Software Engineering, Computational Chemistry, or Computational Biology required. A Master’s degree is desirable
- Formal training in software engineering (covering subjects such as architectural design, OOP, software quality engineering, requirements analysis, etc.) required
- Formal training in Windows based software development is expected, with experience in one or more of the software programming languages listed above, particularly MS Visual Studio C++ and C#
Education: Bachelors
Job Level: Experienced