Cellula is looking to add an
Intermediate Software Developer to its Engineering team to support product development and project delivery.
As an
Intermediate Software Developer, you'll leave your mark across Cellula's products and leverage your experience to take ownership over the software development of a system. You'll get to see your work becomes widely used across multiple units and different products which are delivered to clients all over the world. You'll be a force sustaining a positive team culture while contributing your experience and skills to mentor junior engineers in their design efforts. You'll take part in a product or system's design, development, testing, and support. You'll get to participate in sea trials, attend system deliveries to clients, and see how the systems you designed are operated in the field. The ideal candidate has experience in subsea technology such as AUVs, acoustics, ROVs, or similar systems, or has experience in adjacent industries like robotics or other low volume high mix engineering where systems have undergone the transition from prototype to product.
As a company, we offer team members a chance to grow professionally. Our office is a casual, collaborative environment where you will be able to learn about our state-of-the-art systems from technical experts. We're excited for you to contribute your experience and make a positive impact on how we grow. In addition, we offer flexible work hours, benefits, and competitive compensation. This position is primarily an on-site position with some limited flexibility for remote work.
Duties and Responsibilities- Define requirements and specification for software functionality and behaviors.
- Design software architecture, algorithms, and user and device interfaces to support autonomous operations and mission execution
- Analyze software performance, reliability, and scalability through testing and simulation.
- Develop, integrate, and manage software for in-water autonomous operation, mission planning, and human machine interaction
- Define and conduct software testing, including unit testing, integration testing, and validation against simulated and real-world scenarios.
- Provide technical support for software applications, including bug fixes, feature enhancements, and operator training.
- Software configuration management and quality management.
- Assist in overall vehicle system integration, troubleshooting, and testing.
- Provide technical support through all phases of a project.
- Create documentation and training material and provide training to Cellula team members and clients.
Required Skills & Experience- Degree in related field
- Minimum 3 years working experience in a relevant or related field.
- Working experience developing software for hardware applications.
- Proficient with Real-time Linux, ROS, C++, and Python.
- Excellent communication skills, both written and verbal.
- Software configuration management experience.
- Technical documentation: specifications, requirements, design documents, test plans/reports, operator manuals etc.
- Analytical, thorough, resourceful, and detail oriented.
- Team and customer service focused.
- Self-motivated, hardworking, flexible.
Desirable Skills & Experience- Experience in the subsea industry or with subsea devices.
- Experience operating and piloting unmanned underwater vehicles.
- Robotics systems design experience.
- Firmware development experience.
- LUA programming experience.
- Cybersecurity experience.
- Registered P.Eng. with EGBC.
- ISO9001 quality control.
Please include a cover letter as part of your application.
Reports to: Software Engineering Manager
Position type: Full time
Location: Burnaby, British Columbia