Software Engineer job in Pittsburgh
Role details
Job location
Tech stack
Job description
As a Software Engineer, you will be collaborating with an interdisciplinary team focusing on developing reliable robotic and automation systems for a wide range of real-world commercial products and R&D applications. This can take the form of developing onboard software for a custom camera system, building custom loggers to saturate the write speed of a NVME drive, architecting high-performance middleware infrastructure, or building custom release images optimized for OTA updates.
What Your Day to Day Is
- Making significant contributions by developing high-performance software infrastructure including message serialization, IPC, process management, and logging
- Catching and debugging the failure cases using debuggers like GDB, pdb, and valgrind
- Optimizing software using profiling tools like perf and Callgrind, and writing custom CUDA kernels to squeeze every bit of performance out of the GPU
- Leveraging the knowledge of multiple computer languages (C, C++, Python, Rust, Go, etc.) to solve the problem at hand
- Applying a solid background in 3D geometry, computer vision, and robot kinematics-you should be comfortable navigating transformation matrices and kinematic chains
- Handling geospatial data, georeferencing, and coordinate systems to ensure our systems know exactly where they are in the world
- Getting hands-on with point cloud data to help our robots perceive their environment in 3D
- Being a team player by providing constructive feedback on GitHub pull requests and being open to feedback on your own contributions
- Contributing to, and potentially maintaining, open-source projects
- Coordinating and collaborating with other internal departments when necessary such as test technicians, manufacturing, and production
Requirements
We are a dynamic team committed to making the impossible possible. Our staff comes from diverse backgrounds and experience levels, fueling our ethos of collective growth and passion towards our work. We warmly welcome individuals of similar mindset to join our ranks., * Demonstrated track record of strong personal accountability and initiative excels in autonomous, low-supervision environments
- A deep understanding of C++ and Python, with specific experience using PyTorch and libtorch for modern robotics applications
- A track record of real-world deployment of autonomous systems-you've seen what happens when code hits the dirt
- A builder/maker mentality that has excelled in a technical discipline and is now looking to tackle the challenges of product development in the nascent world of robotics
- Written and presentation skills required to communicate to external customers and internally to teammates
How You'll Stand Out
- A Bachelor's degree in Computer Science or Computer Engineering
- Experience in defense-related government contracting
Benefits & conditions
- UPMC health coverage with FSA or HSA options
- Comprehensive dental, vision, and life insurance
- Fidelity 401(k) plan with employer match
- Free catered lunch every day with a vegan option
- 31 Days of PTO (including holidays)
- Comp time for company travel