At CesiumAstro, we are developers and pioneers of out-of-the-box communication systems for satellites, UAVs, launch vehicles, and other space and airborne platforms. We take pride in our dynamic and cross-functional work environment, which allows us to learn, develop, and engage across our organization. If you are looking for hands-on, interactive, and autonomous work, CesiumAstro is the place for you. We are actively seeking passionate, collaborative, energetic, and forward-thinking individuals to join our team.
In this position, you will be responsible for low-level software in CesiumAstro’s products through all phases of the development process. Key projects will include Linux-based single-board computers and high-reliability microcontroller systems. Cesium’s goal is to create an out-of-the-box hardware and software experience which enhances our customers’ ability to rapidly integrate our products into their systems.
As a Cesium software team member, you will be responsible for heterogenous software designs from model analysis through production, including product roadmaps, block diagrams, detailed design and coding, analysis, test, qualification, and in-orbit support.
The ideal candidate will have used mathematical tools to validate an algorithm, analyze its performance, estimate its hardware resource requirements and develop low level code running as part of an embedded heterogenous computing platform.
Additionally, the ideal candidate will have experience in software testing and high-reliability qualification, as well as software engineering and software project management practices.
The successful candidate will present engineering design review materials to our customers and executive team, as well as participate in proposal-writing efforts. As such, excellent written and verbal communication skills are required.
In this position, you will be responsible for low-level software in CesiumAstro’s products through all phases of the development process. Key projects will include Linux-based single-board computers and high-reliability microcontroller systems. Cesium’s goal is to create an out-of-the-box hardware and software experience which enhances our customers’ ability to rapidly integrate our products into their systems.As a Cesium software team member, you will be responsible for heterogenous software designs from model analysis through production, including product roadmaps, block diagrams, detailed design and coding, analysis, test, qualification, and in-orbit support. The ideal candidate will have used mathematical tools to validate an algorithm, analyze its performance, estimate its hardware resource requirements and develop low level code running as part of an embedded heterogenous computing platform. Additionally, the ideal candidate will have experience in software testing and high-reliability qualification, as well as software engineering and software project management practices.The successful candidate will present engineering design review materials to our customers and executive team, as well as participate in proposal-writing efforts. As such, excellent written and verbal communication skills are required.
JOB DUTIES AND RESPONSIBILITIES
Designing and implementing software for embedded devices and systems, from requirements to production and commercial deployment.
Designing, developing, coding, testing, debugging, and documenting system software.
Reviewing code and system designs.
Analyzing code for efficiency, stability, and scalability.
Integrating and validating new product designs.
Collaborate with cross-functional teams to map high-level algorithms (e.g., in Python/C++/Matlab) to compute primitives.
Work with hardware engineers and system architects to integrate compute system with programmable logic and embedded processors
Supporting software quality assurance and optimizing I/O performance.
Interfacing with hardware design and development engineers.
Assessing third-party and open-source software.
JOB REQUIREMENTS AND MINIMUM QUALIFICATIONS
A Bachelor of Science (BSc) or Master of Science (MSc) degree in Computer Science, Electrical Engineering, or Computer Engineering.
9+ years of industry experience in software development.
API design for interfacing with FPGAs.
Programming experience in C or C++.
Mathematical modelling experience using e.g. Python, Matlab, etc.
Implementation of algorithms in embedded heterogenous platforms, preferrable with multiple level of parallelism, e.g. GPGPU, SIMD / SIMT, DSPs etc.
Profiling and optimization of compute, memory and data flow resources targeting real-time and embedded applications.
Experience in embedded systems design with preemptive, multitasking real-time operating systems (experience with real-time Linux is desirable).
Familiarity with software configuration management tools, defect tracking tools, and peer review.
Excellent knowledge of real-time system coding techniques, IP protocols, interfaces, and hardware subsystems.
Excellent understanding of multi-threaded applications and resource management.
Excellent written and verbal communication skills.
PREFERRED EXPERIENCE
Familiarity with FPGA design and simulation tools.
Experience with hardware/software co-design.
Experience with ARM processors and fully featured microcontrollers.
Experience in the design and development of a Software Development Kit (SDK).
CesiumAstro considers several factors when extending an offer, including but not limited to, the role and associated responsibilities, a candidate’s work experience, education/training, and key skills.
Please be aware that many roles will be subject to both security and export control restrictions. These restrictions mean that factors including new starter’s nationality, any previous or dual nationalities held, place of birth and country of residence may limit those roles that you can perform for the organisation.
Please note: CesiumAstro does not accept unsolicited resumes from contract agencies or search firms. Any unsolicited resumes submitted to our website or to CesiumAstro team members not through our approved vendor list or Talent Acquisition will be considered property of CesiumAstro, and we will not be obligated to pay any referral fees.
Questi cookie sono necessari per il funzionamento del sito e non possono essere disattivati nei nostri sistemi. È possibile impostare il proprio browser in modo da bloccare questi cookie, ma alcune parti del sito potrebbero non funzionare.
Sicurezza
Esperienza dell'utente
Cookie orientati al gruppo target
Questi cookie sono impostati attraverso il nostro sito web dai nostri partner pubblicitari. Possono essere utilizzati da queste aziende per profilare i vostri interessi e mostrarvi pubblicità pertinenti altrove.
Google Analytics
Google Ads
Utilizziamo i cookie
🍪
Il nostro sito web utilizza i cookie e tecnologie simili per personalizzare i contenuti, ottimizzare l'esperienza dell'utente e per indvidualizzare e valutare la pubblicità. Facendo clic su Ok o attivando un'opzione nelle impostazioni dei cookie, l'utente accetta questo.
Le migliori offerte di lavoro da remoto via e-mail
Unisciti alle oltre 5'000+ persone che ricevono notifiche settimanali sulle offerte di lavoro da remoto!