Embedded Software Engineer

San Francisco, CA
Engineering /
On-site
Our Goals

At Farcast, we aim to improve global prosperity. We achieve this goal by building innovative products that enable access to information. Satellite internet is one of the most important ways to achieve this goal and to provide global connectivity coverage. However, the capacity of satellite internet services is limited by the quality and affordability of the devices consumers use to connect to satellites. These devices are called “user terminals”. Our mission is to bring unprecedented innovation to the user terminal industry. 

We believe our innovation will be key in making satellite internet accessible to everyone. Please join us if your goals align with ours!

You will be part of a small, focused software team at Farcast working on the control software for a next-generation phased array antenna for satellite communications. You will share responsibility for building the software stack that will power all of Farcast’s products. You’ll need to be resourceful and flexible and able to move around the stack based on the needs of the team.
All the software we build is written in Rust, so we’re looking for someone who is passionate about building embedded software in Rust, or is a strong C/C++ embedded software engineer excited to learn.

Responsibilities

    • Implement performance-critical antenna control software and integrate it into the software stack
    • Develop and maintain Yocto-based embedded Linux distributions
    • Produce software design documentation, participate in collaborative system design exercises, and conduct design reviews of software and hardware
    • Create and maintain software used to test and diagnose hardware

Experience

    • Strong communication and collaboration skills and the ability to drive consensus in decision making
    • Strong systems thinking and software architecture ability
    • Proficiency in Rust (preferred), or C/C++, for embedded systems
    • Experience in configuring and managing Yocto Linux embedded systems
    • 5+ years of professional experience developing software for embedded systems
    • Experience working with common communication protocols (e.g. Ethernet, I2C, SPI, UART/RS-232/RS-485)
    • Hands-on experience working with hardware and familiarity with embedded debugging tools, including oscilloscopes, logic analyzers, and debuggers
    • Proficiency in using Python for developing hardware-in-the-loop testing

Education

    • Bachelor’s in Electrical/Computer Engineering, Computer Science or similar program

What Makes You Standout

    • Knowledgeable in setting up CI/CD environments for embedded Linux
    • Experience working with GNSS/INS systems
    • Experience with firmware & ARM Cortex-M microcontrollers
    • Knowledge of security best practices for embedded Linux systems

Base Salary Range

    • Compensation includes a competitive base salary as part of a comprehensive package tailored to the candidate’s experience and background. Additional benefits and details are outlined below.
$160,000 - $180,000 a year
Offered Benefits
• Meaningful company stock ownership
• Unlimited PTO plus 20+ days of company shutdown
• Parental leave designed by parents for parents
• 401k with 5% company matching
• $6,000 annual wellness perk
• Individualized health, dental, and vision insurance plans for you and your family
• Quiet Weekends so you can rest, recharge, and be your best for many years
• No-Meeting Fridays

In-Person Requirement
• All employees are expected to be at the office, in person, for a minimum of two days per week

Export Control Requirement
• To comply with U.S. Government space technology export regulations, all applicants and employees must hold U.S. citizenship, lawful permanent residency, or protected status as defined by 8 U.S.C. 1324b(a)(3)

Diversity and Inclusion
• Farcast is proud to be an equal opportunity workplace
• We celebrate diversity and are committed to creating an inclusive environment for all employees
• We do not discriminate on the basis of race, religion, color, gender identity, sexual orientation, age, disability, veteran status, or other applicable legally protected characteristics
• We encourage people of different backgrounds, experiences, abilities, and perspectives to apply. Studies have shown that marginalized communities are less likely to apply for jobs unless they meet every single qualification. If you’re excited about this role but your past experience doesn’t align perfectly with every qualification in the job description, we encourage you to consider still applying.

Note to Recruiters
• Farcast does not accept unsolicited resumes from recruiters or staffing agencies
• Please do not forward resumes to Farcast employees
• Farcast is not responsible for any fees for unsolicited resumes or candidates submitted by agencies