Want to get hired at Boston Dynamics?
Senior Software Engineer
Boston Dynamics
Southampton, England, United KingdomOn Site
Original Job Summary
About the Role
As a Senior Software Engineer on the Spot team at Boston Dynamics, you will be part of a highly collaborative group passionate about innovation and cutting-edge robotic technology. You will define and create key software infrastructure components to allow our robots to operate in a performant, reliable, secure, and scalable fashion.
Day to Day Activities
- Create toolchains for building, verifying, and deploying system images across multiple architectures.
- Address system performance issues by debugging, building instrumentation and diagnostic tools, and architecting high-performance infrastructure components.
- Enable hardware innovations by derisking designs, creating system architecture, and developing device drivers or kernel support.
- Ensure product security using techniques like Secure Boot, Disk Encryption, Process Sandboxing, and Access Controls.
- Communicate designs and best practices across the organization and mentor junior engineers.
Required Skills
- Linux expertise in both kernel and user spaces.
- Deep understanding of processes, threads, interrupt handling, file systems, IPC mechanisms, memory management, systemd, etc.
- 8+ years of experience in C/C++ development along with shell scripting or Python.
- Excellent debugging skills and performance optimization experience.
Desired Skills
- Experience with Embedded Linux and Real Time Linux.
- Working knowledge of hardware-accelerated compute pipelines including GPUs, ML accelerators, and DSPs.
- Familiarity with hardware protocols such as PCIe, Ethernet, I2C, SPI, etc.
- Hardware bring-up and debugging, including reading schematics and datasheets.
Key skills/competency
- Linux
- C/C++
- Debugging
- System Performance
- Security
- Embedded Systems
- Kernel Development
- Toolchain
- Hardware Protocols
- Mentorship
How to Get Hired at Boston Dynamics
🎯 Tips for Getting Hired
- Research Boston Dynamics: Understand their robotics innovations and market impact.
- Customize your resume: Highlight Linux, C/C++, and debugging skills.
- Showcase technical projects: Detail system performance and security implementations.
- Prepare for interviews: Review problem-solving and system design questions.
📝 Interview Preparation Advice
Technical Preparation
circle
Review Linux kernel internals and system calls.
circle
Practice C/C++ debugging and performance tuning.
circle
Study IPC and multi-threading techniques.
circle
Understand hardware protocols and device drivers.
Behavioral Questions
circle
Describe a time you solved a complex problem.
circle
Explain how you mentor junior engineers effectively.
circle
Discuss collaboration with cross-functional teams.
circle
Share a challenging project and your approach.