Senior Software Engineer

Website Thorlabs

This position will develop desktop application software and software development kits (SDKs) in service of our product development objectives. Our mission is to develop cutting edge lasers as well as optical test and measurement electronics. The Software Engineer III will contribute to both sustaining existing products and new product development, experienced desktop software developer with the ability to lead the full scope of software development from proof of concept to production testing. The position would also have knowledge and experience with kernel driver development on Windows and Linux

 

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

Develop desktop software applications in C# and .NET
Develop SDKs in C / C++, Python, Matlab, and LabVIEW
Create wireframe concepts of User Interfaces (UI)
Architect software applications supporting multiple Thorlabs products
Develop unit and regression tests
Provide sustaining support for released software in the form of bug fixes and feature additions
Contribute to DevOps through sustaining existing production pipelines and connecting new applications to our CI/CD infrastructure
Participate in software quality control workflows and code reviews
Provide scope of work assessments
Advise and mentor junior engineers
The Company retains the right to change or assign other duties to this position.

Salary range for this position is 120K to 145K
Requirements
Qualifications

Experience

·       Professional experience developing customer facing desktop software applications running on Windows

·       Expert knowledge in C# .NET

·       Competency with C and C++ programming

·       Capability to independently configure compiler toolchains

·       Knowledge of software development best practices

·       Independent facility with version control tools (git)

·       Enthusiasm and skill for creating attractive Graphical User Interfaces (GUIs)

·       Understanding of Ethernet, WiFi, and USB interfaces on modern Windows and Linux Machines

·       5-10 years of professional software development experience

·       Experience setting up software build toolchains from scratch

 

Education:

BS or MS Degree in Computer Science or equivalent experience

Specialized Knowledge and Skills:

C# .NET (essential)
C  (essential)
C++  (essential)
Python (essential)
Matlab (nice to have)
LabVIEW (nice to have)
Windows and / or Linux Kernel Drivers (nice to have)
Sockets and COM port programming
Object Oriented Design principles
CMake
GCC
Visual Studio (essential)
Azure DevOps
UI / UX development (essential)
Knowledgeable of common design patterns in desktop software development
Good planning, prioritizing and organization and multiple priority management 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 identify 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.

Upload your CV/resume or any other relevant file. Max. file size: 128 MB.