Software Engineer
AutoStore™
About the Role
AutoStore™ is hiring an Entry-Level Software Engineer to join our team at the start of their career. You will help design, build, and test the software that powers our automated storage and fulfillment systems, working alongside experienced engineers on real production code. We are looking for a recent graduate with a strong academic record and, ideally, some internship experience. You don't need to know everything on day one. What matters most is a genuine passion for software, curiosity about how things work, and an eagerness to learn quickly. You will receive structured mentoring and hands-on training, including in C++ and Python, the core languages our team works with.
Key Responsibilities
- Design, write, and maintain clean, well-structured code in C++ and Python under the guidance of senior engineers.
- Implement new features and fix bugs across our software products.
- Apply object-oriented design principles and follow the team's coding standards.
- Write unit and integration tests for the code you develop.
- Debug and troubleshoot issues, and learn to find root causes.
- Take part in code reviews, both receiving feedback and reviewing teammates' code as you grow.
- Work in an agile team, contributing to sprint planning, stand-ups, and retrospectives.
- Use Git and GitHub for version control, pull requests, and code reviews.
- Work with QA, DevOps, and product teammates to deliver working software.
- Develop your C++ and Python skills on the job through training, mentoring, and real project work.
- Write and update technical documentation as you learn our systems.
- Ask questions early and often, and share what you learn with the team.
Requirements & Tech Stack
- Working knowledge of C++ and Python, or of another object-oriented programming language (e.g., Java, C#).
- If your experience is in a language other than C++ and Python, a commitment to learning both on the job.
- Basic familiarity with Git and version control.
- A genuine passion for technology and a strong eagerness to learn.
- Good problem-solving skills and the ability to communicate clearly in a team.
- Bachelor's or Master's degree in Computer Science, Software Engineering, Computer Engineering, or a related field, completed recently or within the next six months.
Qualifications
- Cumulative GPA (CGPA) of 3.5 or higher on a 4.0 scale, or equivalent.
Nice to Have:
- Internship, co-op, or placement experience in software engineering.
- Understanding of data structures, algorithms, and object-oriented design.
- Exposure to unit testing frameworks (e.g., GoogleTest, pytest).
- Basic experience with Linux, the command line, or debugging tools.
- Exposure to embedded systems, robotics, or real-time software.
- Experience with networking and communication protocols, including TCP/IP, MQTT, REST APIs, and WebSockets.
- Personal projects, open-source contributions, or hackathon experience.