Embedded Software Engineering Intern

Kepler Communications Logo

Kepler Communications

πŸ“Remote - Canada

Summary

Join Kepler Communications, a company revolutionizing space internet connectivity, as an Embedded Software Engineering Intern. You will contribute to the development of cutting-edge satellite and ground system software. This internship offers hands-on experience with on-board software, embedded Linux, firmware, and IoT modules. The role involves designing, developing, and testing software, collaborating with cross-functional teams, and utilizing various embedded systems technologies. The internship is full-time and available for 4, 8, 12, or 16 months, starting September 2025, with options for on-site, hybrid, or remote work. Kepler is committed to fostering an inclusive and accessible work environment.

Requirements

  • 2+ years of embedded systems experience
  • Currently enrolled in a Computer Science or equivalent degree program
  • 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 and drivers
  • Excellent communication skills
  • Ability to effectively use git
  • Currently enrolled in a post-secondary program and returning to studies after the internship
  • Available for a full-time, 4, 8, 12, or 16 month internship beginning September 2025

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

Preferred Qualifications

  • Relevant experience with hobbies or University design team
  • Python development experience
  • 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.)

Benefits

Opportunity to work out of our new Toronto office! This position can be based onsite at our Toronto office (24 Ward Street), hybrid, or remote, depending on the candidate’s location

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.