Gideon Brothers develops autonomous, collaborative and modular robot platforms and autonomy technologies for unstructured, indoor, human environments. Our robots are designed to assist operations in various industries. In our offices in Zagreb and Osijek, we have gathered a team of 80+ super-talented people, including nine PhDs and 35+ Masters of robotics hardware and software engineering and related disciplines. Our robots are designed to assist operations in various industries.
We are looking for a Junior and Mid Python Software Engineer in our Zagreb office, so feel free to apply if you find we would be a good fit!
Scope of work:
Python Software Engineer designs, develops and maintains Python-based applications in our robotic ecosystem. For example: application for booting and monitoring autonomous software stack and for communicating with other autonomous stack components such as Navigation, SLAM, Vision etc., application for controlling robotic SWARM, application for over-the-update and others.
Writes documentation, tests developed solutions and integrates them with other robotic modules. Works as an individual contributor within an agile team. Thoroughly understands the problem space and works with cross-functional teams in order to design and implement solutions.
By applying to this position, you are being considered for a number of similar positions within our organization.
- Design and develop algorithmic and architectural solutions for a given problem in the software and robotics engineering domain using tools like:
- UML diagrams
- Source control
- Contribute to our software modules:
- application for booting and monitoring Gideon Autonomous Software Stack while communicating with autonomous components inside the Stack.
- application for controlling and communicating within a robotic SWARM.
- application for an over-the-air update of Gideon Autonomous Software Stack.
- common code Python library.
- Write software documentation for users and developers, with tools like Markdown, UML diagrams and Sphinx.
- Adopt and maintain software engineering principles and coding standards for clean architecture and code:
- object-orientated paradigm
- SOLID principles
- code comments and documentation
- Submit code for code review and review other team member’s code.
- Collaborate with other development teams and QA teams.
- Continuous learning and improvements through internal and external education.
- BSc or MSc in Software Engineering, Automation, Computer Science, Informatics or a related engineering field.
- Strong Python development experience with Python 3.5 or greater.
- Ability to analyze given tasks and propose architectural and algorithmic solutions.
- Experience with object-oriented programming (OOP).
- Experience writing multi-thread/multi-process programs.
- Ability to work in a team setting and contribute unique ideas to the group.
- Good communication and interpersonal skills.
- Comfortable working in a Linux-based operating system.
- Exposure to Docker and Linux/Ubuntu.
- Similar industry work experience.
- Work experience in robotics software and environments, including ROS.
- Good knowledge of multiple programming/scripting languages such as C++ and Bash.
What we offer:
- Joining an R&D team working with state-of-the-art algorithms and helping develop breakthrough AI solutions in several fields, including computer vision, semantics, and navigation.
- Internal talks – fun deep dives into different fields of expertise.
- Well-equipped testing hall right next to the Zagreb office.
- Flexible working hours & the opportunity for occasional remote work.
- Exposure to the latest technology and top-notch tools.
- Relaxed and friendly working environment and supportive colleagues.
- Working in a dynamic and exciting industry.
- Working in a multidisciplinary environment open to cross-divisional collaboration.
Do you have what it takes to become our Python Software Engineer?