Posted at: 9 April
Embedded Software Developer
Company
Kepler Communications
Kepler Communications is a Toronto-based B2B satellite telecommunications company specializing in real-time data relay services for space-based assets, targeting the Earth Observation and Commercial Space markets.
Job Type
Full-time
Allowed Applicant Locations
Kenya, Worldwide
Job Description
Kepler is on an audacious mission to deliver Internet connectivity to space, creating the infrastructure to support the rapidly increasing data needs of the space economy. With 23 satellites launched to date and our optical constellation on the horizon, our ambition is to improve access to space-generated data, whether in LEO, MEO, GEO, or beyond! Kepler is hard at work innovating and continuing to grow and expand our most important asset – the Team!
We're on the hunt for a top-tier Embedded Software Developer. Your focus will be on software development and maintenance required for both space and ground-based assets for a growing fleet of spacecraft. You'll be relied upon for input and decisions that will directly impact design and operation.
Responsibilities:
Design and develop reliable, high-quality software related to:
On board software for our next generation of satellites
Embedded Linux for both space and ground systems
Firmware and drivers IoT modules
Writing thorough tests and documentation
Participating in software design review and code review processes
Work with electrical, digital design, and operations teams to identify required features and solidify the system architecture
Provide technical leadership and mentorship to junior engineers
Identify shortcomings in existing software components and direct future development efforts
Requirements:
5+ years of embedded software development experience
Bachelor's degree in Computer Science or equivalent
Strong software design and development skills, including algorithms, testing and debugging
Proficiency in C/C++, especially in embedded topics such as interrupt handlers, concurrency, memory mapped peripherals, and hardware interfaces (SPI, I2C, CAN)
Experience with embedded operating systems and build systems, including OpenEmbedded/Yocto and FreeRTOS
Embedded Linux experience including writing kernel modules, device trees, and drivers
Excellent communication skills
Ability to effectively use git
Bonus Points:
Master's degree
Python development experience
Experience developing software for aerospace applications
Experience developing multi-stage bootloaders
Strong knowledge of computer networking and modern networking protocols
Experience with RTL (Verilog and/or VHDL) and embedded SoCs
Hardware debugging experience (oscilloscopes, logic analyzers, etc.)
Experience with ARM assembly
Kepler Communications is committed to fostering an inclusive, accessible environment, where all employees and customers feel valued, respected and supported. We welcome applications from: Women, Aboriginal persons, persons with disabilities, ethnic minorities, visible minorities, people who identify as LGBTQ+ and others who may contribute to diversification in our workplace.
As part of our commitment to accessibility for all persons with disabilities, Kepler will, upon the request of the applicant, provide accommodation during the recruitment process to ensure equal access to applicants with disabilities. Please contact our People & Culture team, through our Career Page to make your accommodation needs known and we will consult with you to ensure suitable accommodation is provided.