Software Engineer

Mid-level
Jessup, 🇺🇸 United States
Software Developer
Software development

Thorlabs is a dynamically growing company in the Photonics sector designing and manufacturing complex optical systems from lasers to microscopes. We are looking for a talented and motivated Software Engineer with a proven record of industry and academic achievement to work as part of our Fiber Laser and Spectroscopy Instrument group located in the Washington D.C. metro area. The successful candidate must show strong analytical and communication skills, be comfortable doing hands-on work, be a self-starter, be detail oriented, organized, disciplined in completing work assignments, and be prepared to thrive in a highly collaborative environment.

Purpose of the Position

This position will be responsible for the development of graphical user interfaces (GUI), instrument control software, firmware, and signal/image processing codes as part of multi-disciplinary engineering teams. The Software Engineer should have sufficient proficiency and experience to serve as a go-to reference and resource to guide the multi-disciplinary team in making successful decisions in architecting complex codebases, facilitating collaborative software development via GIT, bug tracking, and software deployment. Although the location of the position is in the Baltimore/Washington DC area, from time to time, the Software Engineer may be required to undertake duties at other Thorlabs locations.

Essential Job Functions include the following, but are not limited to:

  • Software support for developing the company’s advanced photonics and instrumentation products.
  • Primary software developer for small projects. For larger projects, will work with a team of programmers.
  • Programming graphical user interfaces (GUI).
  • GPU programming to accelerate math and signal processing calculations.
  • Microcontroller programming.
  • Complex software architecture planning and implementation.
  • Intermediate analytical and math calculations in support of real-time instrument control and/or signal processing software development.
  • System level thinking and cross-disciplinary interactions.
  • Preparing regular reports and presentations on project status and progress.
  • Documentation and bug tracking.
  • Production support, as needed.

In addition to the essential functions and duties listed above, all positions are also responsible for:

  • Meeting company standards pertaining to quantity and quality of work performed on an ongoing basis, performing all work related tasks in a manner that is in compliance with all Company policies and procedures.
  • Adhering to Company policies, procedures, and directives regarding standards of workplace behavior in completing job duties and assignments.

The Company retains the right to change or assign other duties to this position.

Physical Activities:

Work may be active, could stand or sit for long durations and/or perform repetitious work at times. Exerts up to 35 lbs. of force occasionally. The noise level in the work environment is usually moderate.

Requirements

Qualifications

Experience:

  • 3+ years of experience in software development for scientific, academic, industrial, biotech, medical, or semiconductor instrumentation.

Education:

  • Bachelor's degree (BS), Master’s degree (MS) preferred, in Computer Science or related field.

Specialized Knowledge and Skills:

The following are required:

  • Programming for both Microsoft Windows and Linux Environments
  • Modern C++ (C++11 or later, RAII, Smart Pointers, Standardized Multithreading, Templates, Inheritance, etc.)
  • Python
  • GUI development in QT and WPF with Model–View–ViewModel (MVVM) Pattern
  • GIT
  • Software Design Patterns and practical use in complex / high performance codes
  • Unit Testing

The following are preferred but not required:

  • Microcontroller programming (Atmel, STMicro, Arduino, experience with FPGA is optional)
  • GPU accelerated math/signal processing with CUDA
  • Programming for high-speed data acquisition and signal processing
  • Docker, Amazon Web Services (AWS)
  • General understanding and/or hands on experience with analog and digital electronics
  • Good communications skills, both oral and written, technical presentation skills.

Thorlabs values its diverse environment and is proud to be an Equal Employment Opportunity/Affirmative Action Employer. All qualified individuals will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age or veteran status. Job descriptions are not intended as and do not create employment contracts. The organization maintains its status as an at-will employer. Employees can be terminated for any reason not prohibited by law.

Benefits

Thorlabs offers a complete benefits package that includes medical, dental and vision insurance, company paid life insurance, a generous PTO package, a 401(k) plan, and tuition reimbursement just to name a few.

 

Thorlabs

Thorlabs

Manufacturer of Motion Control and Vibration Isolation products for photonics applications in the industrial and research sectors.

Manufacturing
Technology
Research
Training
Healthcare

Other jobs at Thorlabs

 

 

 

 

 

 

 

 

View all Thorlabs jobs

Notifications about similar jobs

Get notifications to your inbox about new jobs that are similar to this one.

🇺🇸 United States
Software Developer

No spam. No ads. Unsubscribe anytime.

Similar jobs