Senior Embedded Software Engineer II

  • Full-Time
  • ENGINEERING
  • USA
  • Posted 1 month ago
  • To conform with the United States Government Space Technology Export Regulations, the applicant must be a U.S. citizen, lawful permanent resident of the U.S., conditional resident, asylee or refugee (protected individuals as defined by 8 U.S.C. 1324b(a)(3)), or eligible to obtain the required authorizations from the U.S. Department of State.

Company Details

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.

Please Note: To conform with the United States Government Space Technology Export Regulations, the applicant must be a U.S. citizen, lawful permanent resident of the U.S., conditional resident, asylee or refugee (protected individuals as defined by 8 U.S.C. 1324b(a)(3)), or eligible to obtain the required authorizations from the U.S. Department of State.
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.
In this position, you will be responsible for low-level and high-level software in Cesium’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 software designs from concept through production, including product roadmaps, block diagrams, detailed design and coding, analysis, test, qualification, and in-orbit support. The ideal candidate will have development experience at nearly every level of the software stack, including microcontrollers, low-level drivers, board support packages (BSP), end-use applications, and user interfaces. 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.

Key responsibilities include:

    • 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.
    • Supporting software quality assurance and optimizing I/O performance.
    • Providing post-production/in-orbit customer support.
    • Interfacing with hardware design and development engineers.
    • Assessing third-party and open-source software.

Successful candidates will require, as a minimum:

    • A Bachelor of Science (BS) or Master of Science (MS) degree in Computer Science, Electrical Engineering, or Computer Engineering.
    • 6+ years of industry experience in software development.
    • Experience in hands-on development and troubleshooting of embedded hardware. API design for interfacing with FPGAs.
    • Experience with products for aerospace applications.
    • Programming experience in C or C++.
    • 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 includes:

    • Adequate knowledge of reading electronics schematics and component data sheets.
    • 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. We also provide generous benefits and stock option packages to all our employees.
CesiumAstro, Inc. is an Equal Opportunity/Affirmative Action employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex including sexual orientation and gender identity, national origin, disability, protected Veteran Status, or any other characteristic protected by applicable federal, state, or local law.
Visit Us On LinkedinVisit Us On FacebookVisit Us On Twitter