Senior Software Engineer

Full time - Salary - Rochester, NY

Would you like to be part of a team of technical experts designing niche hardware to solve complex optical imaging problems? If so, we’re looking for someone like you to join the EOPTIC team!

Job Summary

At EOPTIC, we’re known for designing innovative technologies that answer a slew of unmet requirements related to complex imaging problems — and we need a self-motivated problem-solver to help us deliver these end-to-end, bespoke solutions. We’re currently seeking a Senior Software Engineer to assist in implementing strategies, product evaluation, and ultimately build upon an infrastructure that supports the ever-changing needs of our customers.

 

The Senior Software Engineer will provide software development expertise to conceptualize, analyze, build, and test solutions for factory automation, process control, optical metrology, space & aerospace, surveillance, and other complex imaging and sensing applications.  Our team designs, builds, and test hardware and software in the entire imaging chain. Key technical areas include Hyperspectral and Multispectral Image Processing, Machine Learning, System & Component Analysis, Optical Imaging and Tagging, Computer Vision and Hardware Signal Processing.

 

Responsibilities

  • Act as a subject matter expert for your discipline, taking ownership in the design, development and deployment of software enabled capabilities for EOPTIC products
  • Lead the design and implementation of multiple developments to rapidly deliver capability beyond the scope of current platforms, with a clear path for future architecture and capability evolution
  • Engage with internal and external stakeholders to manage requirements definition, roadmap, team co-ordination and technical design/implementation/sustainment/evolution tasks
  • Effectively collaborate with members of a multi-disciplinary engineering team and provide technical direction and leadership for complex engineering projects
  • Design and architect end-to-end software frameworks for full scale production of custom optical sensing systems.
  • Design, code, and test simulation fixtures that operate with both software and hardware in the loop integrations to support EOPTIC R&D efforts.
  • Develop, update, and maintain end-user, manufacturing, and quality control documentation for EOPTIC products, services and activities.
  • Work as part of a team to manage the transfer of technology from research to development to manufacturing.
  • Support field integration, data collection and testing activities to end-users on their applications and participate in new business development efforts.
  • Advise on and participate in processes established to ensure that EOPTIC continuously improves its ability to deliver the highest value products and services to its customers.

 

Qualifications Required

  • BS, MS or PhD degree in Computer/Software/Electrical Engineering, Computer Science, Robotics, related field, or relevant experience
  • Extensive professional experience working as a Software Engineer with one or more domains and/or technologies of expertise
  • 5+ years detailed experience with C/C++, Rust, and/or Go development
  • Experience with the design, implementation, and support of embedded hardware devices
  • Experience with developing and optimizing device drivers
  • Experience optimizing file I/O processes and PC memory management
  • Experience developing applications for Windows and various Linux distributions
  • Familiarity in communication interfaces such as CAN, USB, Ethernet, RS-232, SPI, I2C, etc…
  • Exceptional written and verbal communication and presentation skills.

 

Qualifications Preferred

  • Proficiency with git and its usage in a highly-collaborative environment
  • Experience with embedded Linux and real-time operating systems development on custom hardware
  • Experience with physics-based modeling/simulation and/or computer vision algorithms
  • Familiarity of multi/hyperspectral imaging and remote sensing applications
  • Knowledge of CCD/CMOS sensor timing development a huge plus
  • Proficient with hardware debugging tools such as oscilloscopes, logic analyzers, and protocol analyzers
  • Machine Learning algorithm development (Training, Inference, Evaluation)
  • Large-scale distributed computing frameworks / mesh networks
  • Software test methodologies and QA workflows
  • Desire to learn and grow into a Principal/Manager/Tech-Lead role, with responsibility for line management of junior engineers, in addition to technical delivery and architecture roadmapping

 

 

About Us

EOPTIC is a system integrator who specializes in the rapid prototyping of niche instrumentation, able to integrate with cloud-based, purpose-built software solutions. With expertise in areas of imaging science, color science, and optical system development, EOPTIC is strategically located in the heart of the optics community in Rochester, NY. Our team of specialists offer a range of services from camera characterization and testing, process control and material analysis, engineering services, and custom solutions consulting and development. Working closely with customers to frame problems completely and deliver tailored solutions optimized for success, our engineers are equipped to solve any optical, inspection, or metrology challenge that comes our way.

 

Eoptic is an equal opportunity employer. All applicants will be considered without regard to race, color, religion, creed, gender, national origin, age, disability, marital or veteran status, or any other legally protected status. All employment is decided based on qualifications, merit, and business needs.

 

*The description provided above is not intended to be an exhaustive list of all job duties, responsibilities, and requirements. Duties, responsibilities, and requirements may change over time and according to business need.

    Ready to Apply?