Senior Software Engineer, Applications
Berkshire Grey
Software Engineering, IT
Bedford, MA, USA
Posted on Saturday, July 20, 2024
Minimum Qualifications:
- Bachelor’s degree in Computer Science or a closely related field.
- 2+ years of experience in software development.
- Proficiency in Python.
- Experience in a fast paced, agile environment.
- Ability to:
- Collaborate with a team on software projects
- Navigate and contribute to large, complex codebases
- Participate in code reviews and apply design patterns effectively
- Employ MVP mentality, prioritizing functionality and going from simple to complex
- Proficient in:
- Python
- System design
- Asynchronous / Concurrent programming.
- Git
- Jira
- Ubuntu
- Code reviews
- Design patterns (producer-consumer, modular and configurable, etc.)
Preferred Qualifications:
- Exposure to robotics or a keen interest in the robotics field.
- Familiarity with the material handling industry.
- Understanding of parallel/distributed systems.
- Basic data analysis (logging, profiling, statics, pandas)
- Experience with:
- Documenting code clearly
- Using key-value stores (ZooKeeper)
- Writing software tests (pytest)
- Managing processes and containers (Docker, Kubernetes)
- Basic knowledge of robot simulation, visualization
- Experience with real sensors, robots
- Developing APIs.
- Developing RESTful, and/or gRPC services/clients.
- Robotic Operation System (ROS2).
- NoSQL databases (e.g. MongoDB).
About The Job
Berkshire Grey is a leader in the field of AI and robotics, providing innovative solutions for e-commerce, retail replenishment, and logistics. Our technology automates complex pick, pack, and sort operations.
As a Software Engineer, Applications, you will develop and enhance software that powers our cutting-edge robotic solutions. The robotic application development involves high-level logic that controls the systems and ties everything together. You will be solving a variety of robotic problems including software behaviors and systems intelligence.
Responsibilities
- Design, develop, and support advanced robotic application software deployed in production environments.
- Design, prototype, implement, test, and maintain software that integrates and enhances robotic capabilities to reliably deliver and perform complex robotic tasks.
- Work closely with hardware engineers, product managers, and other software teams to integrate capabilities into our broader robotic systems.
- Communicate technical progress and collaboratively problem solve.
6110-2413EF