Embedded Systems Software Intern [Fall 2023]
Zipline is on a mission to transform the way goods move. Our aim is to solve the world’s most urgent and complex access challenges by building the first instant logistics system that serves all humans equally. Leveraging expertise in robotics and autonomy, Zipline designs, builds, and operates a fleet of cutting edge, autonomous delivery drones. We serve tens of millions of people around the world.
Joining Zipline’s Emerging Talent program as an intern is an opportunity to contribute to our promise of building a system that provides equitable access to critical healthcare supplies for millions of people. We believe that internships are more than just opportunities to learn by watching or doing low level tasks. We expect our interns to take on meaningful work that actively contributes to moving Zipline’s mission forward, while learning real-world skills that will serve them in their careers for the long term.
Join us, and build the future of logistics with the best humans around!
About the Embedded Team
Zipline designs and operates the world’s largest drone delivery service providing access to critical medical supplies. Leading the way in drone delivery often means exceeding the capabilities of what’s available off the shelf, and as a result we need to engineer the majority of our system in-house. Doubling down on the reliability of our systems by writing embedded applications and drivers close to the hardware is a critical path to delivering to people whose lives will be meaningfully affected by smarter, more equitable access!
We trust our team, so we’ll trust you. We’ll help you (and you’ll help us) find an area of technical ownership that you can dive deep into to define system requirements, develop creative and simple solutions, and prove with testing and data that your system meets the rigors and edge-cases of real-world deployment. We are a team that is constantly learning to improve our systems, and ourselves, and we can’t wait for you to join us!
Among our current challenges:
- Design and develop a software platform for the new P2 Zip and the world’s cutest Droid delivery system
- Scale our flight and distribution center software to allow upwards exponentially more deliveries per day
- Prototype, test, and refine next generation flight and ground systems working alongside our mechanical and electrical engineering teams
- Develop safe software architecture that will be deployed across the world
- Develop perception solutions for any weather and any real world environment
- Achieve safety and reliability goals beyond the current state of the art
Do you love tinkering with mechanical and electrical devices and watching your code come to life? Does writing safety-critical low-level software intrigue you? Do you see your projects through from start to finish, regardless of what you’re working on?
Zipline is looking for interns to join our Embedded Systems team to advance our autonomous aircraft and ground systems. In this role, you will work alongside cross-functional partners to develop solutions to some of our trickiest problems.
A lot goes into flying vital supplies autonomously, but doing so reliably and at scale is an even bigger challenge. From deploying embedded software to devices across the world, fault response and handling, launching & landing, all the way to integration with our customer’s physical & software systems, you will work with and learn from not only some of the most impressive embedded engineers in the field, but from a huge variety of our amazing Zipline team!
What You'll Do
Embedded interns own a variety of big problems integral to our system! Examples of previous projects included:
- Building a high data rate voltage and current telemetry system that runs continuously in our RTOS using ADCs, I2C devices and GPIO interrupts. Testing this feature rigorously, deploying it to production globally, building data analysis tools to verify that the feature is working properly, and using this data to root-cause tricky failures to improve the reliability of our systems.
- Rapidly iterating on the concept of a new perception system, integrating compute modules and sensor prototypes to fly a proof of concept ASAP and de-risk key aspects of the approach.
- Building a system to multiplex batteries between chargers, reducing charging times and operator fatigue. Owning the entire feature development process from the design and user interface, through implementation, testing, deployment, and data monitoring, continuously soliciting feedback from engineers and operators throughout the whole process.
- Working with operations teams to identify ways to improve our ground systems behavior to enable faster aircraft launch and landing. Prioritizing changes by obtaining engineering leadership buy-in, and implementing them by using a variety of bench-top and real flight-test methods to verify the code. Ultimately, rolling out the update to global operations!
- Design a motor dyno tester that validates the functionality of our custom motor and controller systems, developing code to automate a large array of sensors and actuators to determine whether a unit passes or fails.
What You'll Bring
The minimum internship duration is 10 weeks. Longer internships/co-ops are encouraged but not required. Interns in embedded systems have extended their internship to 4-6 months. A longer tenure multiplies impact, you’ll have learned a ton at Zipline in your first several weeks and be able to tackle projects of significant complexity and impact as your internship continues. Embedded interns are encouraged to be on-site for most of the internship. We believe close interaction with team members and hands-on experience with hardware is invaluable to maximize the impact you can have at Zipline! Beyond this we hold a high bar for our interns
Apply if any of these apply to you:
- You've designed, built and/or deployed electromechanical systems or robots, inside or outside the classroom.
- You’re comfortable working in one of C, C++, Python, or Rust, and have developed software for a real time operating system or embedded Linux.
- You are comfortable getting feedback so that you can learn to write code that is efficient, easy-to-read, well-tested, has friendly APIs, and incurs minimal technical debt
- You’re familiar with basic electrical engineering concepts, such as reading schematics, debugging with an oscilloscope, and communication protocols (CAN, SPI, UART, etc).
What Else You Need to Know
The starting cash range for this role is $34.00 - 38.00 / hour. Please note that this is a target, starting cash range for a candidate who meets the minimum qualifications for this role. The final cash pay for this role will depend on a variety of factors, including a specific candidate's experience, qualifications, skills, and working location. The total compensation package for this role may also include: equity compensation; overtime pay; discretionary annual or performance bonuses; sales incentives; benefits such as medical, dental and vision insurance; paid time off; and more.
Zipline is an equal opportunity employer and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws or our own sensibilities.
We value diversity at Zipline and welcome applications from those who are traditionally underrepresented in tech. If you like the sound of this position but are not sure if you are the perfect fit, please apply!
Zipline is also committed to providing reasonable accommodations to individuals with disabilities. Please let your point of contact at Zipline know if you require any accommodations throughout your interview process.
Something looks off?