Principal Enterprise Software Engineer
Onward Robotics10 months ago
Pittsburgh, PA, United States
Hybrid
Full-time
Junior Level (1-3 years)
Job Description
Position Overview
At Onward Robotics, we are a bold, gritty, and purposeful team on an ambitious mission to revolutionize fulfillment. Our innovative automation technology combines proprietary software with person-to-goods mobile robots to boost efficiency in warehousing, distribution, and e-commerce. As a Principal Enterprise Software Engineer, you will collaborate with system engineers, software architects, and robotic engineers to develop, configure, monitor, and secure our platforms. You will also coach and guide a team of software engineers in designing and maintaining the software that controls our robotic fleet.
Key Responsibilities
- Design, implement, and maintain base frameworks, REST APIs, and application logic for managing, configuring, and tasking robot fleets.
- Manage team tasking in Jira to deliver on quarterly goals.
- Develop data models and database creation, maintenance processes, and procedures.
- Collaborate with other software teams to ensure well-defined interfaces and interoperable services.
- Develop code in Python, SQL, and C++.
- Coach and mentor software engineers.
- Design and build robust software delivery mechanisms.
- Collaborate with system engineers, roboticists, and software architects to define requirements and technical solutions.
- Conduct design and code reviews while promoting best practices.
- Support software delivery through robust build, test, and deployment mechanisms (e.g., Docker, Kubernetes).
- Troubleshoot issues in deployed systems and drive continuous improvement initiatives.
- Participate in sprint planning, architecture discussions, and technical reviews.
Required Qualifications
- Solid experience in large-scale distributed system development.
- Proven track record in developing solutions based on detailed requirements.
- Proficiency in Python.
- 10+ years of experience in designing and implementing software.
- Experience with large-scale distributed software systems.
- Fluency in one or more object-oriented programming languages (Python, Java, C++, etc.).
- Experience with FastAPI or similar REST frameworks.
- Experience with OAuth and API Authentication.
- Ability to be flexible and adaptable in a startup environment.
- Bachelor’s Degree in Computer Science or a related field
Preferred Qualifications
- Experience with Unix / Linux.
- Experience with Rust.
- Familiarity with containerization tools such as Docker and Kubernetes.
- Experience with React.
- Proficiency in software configuration management systems (git, svn, etc.).
- Familiarity with communication protocols (HTTPS, MQTT, AMQP).
- Experience with commercial software deployment and support.
Required Skills
OAuth
FastAPI
SQL
C++
Python
Large scale distributed system development
Unix/Linux
Coaching and Mentoring
Source control (Git)
Containerization (Docker, Kubernetes)
Distributed system design
REST API development