Convergence Concepts Inc., a growing technology consulting firm based in Vancouver, is seeking an experienced Software Engineer to work on a contract for our client. This is an exciting opportunity to develop cutting-edge software for world-class Astronomical Instrumentation.
The work includes analysis, design, development, implementation and testing of software for precision opto-mechanical components and systems for Astronomical Instrumentation. Novel and unique software and integrated hardware/software systems will be developed for complex, state-of-the-art Astronomical Instrumentation (e.g., adaptive optic systems, spectrographs, cameras, measuring equipment).
Contract Position:
- Approx. 1500 hours per year
- Potential for extension up to 4 additional years
- Work remotely, with travel to Victoria, BC up to 2 weeks at a time; up to 1 time per month
Responsibilities:
- Design, develop, implement and test software for complex optical/infrared astronomical instruments
- Create highly optimized real-time control software with strict timing and low latency requirements
- Interface software with custom hardware mechanisms and off-the-shelf components
- Debug large, multi-threaded/multi-process codebases (e.g. 40K+ lines)
- Develop components to control/monitor instrument mechanisms across various interfaces
- Program control systems for motors, wavefront sensors, and other astronomical hardware
- Deliver code monthly via git, following documentation and coverage standards
Required Skills:
- Degree in Software, Computer, Electrical Engineering, Computer Science or Physics
- Low level / controller and hardware programming experience; OS
- Proven experience with adaptive optics, real-time control systems, opto-mechanical hardware
- Background in Astronomical Instrumentation software for observatories/telescopes is a huge asset
- Expertise in real-time systems and linear algebra
- Proficient in C, C++/Java, (or equivalent object-oriented language), Python, shell scripting
- Skilled with Linux, git, development environments
- Experience controlling motors/wavefront sensors deterministically
- Strong technical documentation abilities
- Operating system experience is preferred but not necessary, for example building kernels, installing low-level device drivers, allocation of processes to cores, debugging network interfaces, etc.
Only selected candidates will be contacted.
Job Types: Full-time, Contract, Fly-In/Fly-Out
Salary: $70,000.32-$120,000.00 per year
Benefits:
- Dental care
- Extended health care
- Paid time off
Flexible Language Requirement:
- French not required
Ability to commute/relocate:
- Victoria, BC V9E 2E7: reliably commute or plan to relocate before starting work (preferred)
Education:
- Bachelor's Degree (required)
Work Location: Hybrid remote in Victoria, BC V9E 2E7
Application deadline: 2024-03-30