To grow our R&D team and improve the software quality, we are seeking a Senior Software Engineer.
Our mission at Seasony is to make indoor farming more profitable, scalable, and sustainable. Indoor farming (Vertical farms, greenhouses, insect farms, etc.) is a crucial piece of the puzzle to solve some of the challenges in the food and agricultural transformation the world is going through. Our flagship product, the autonomous mobile robot "Watney," helps indoor farms by automating core processes and provides growers with valuable data insights. The robot consists of a mobile platform, a lift, and a modular top.
Role responsibilities:
As a Senior Software Engineer, you will be developing the software for the robot using the ROS middleware and deployed on a Linux-based computer. Experience working with hardware and embedded software development is a plus. The role will include development in both C++ and Python and experience with ROS is plus but not required.
Develop healthy and professional in-house software practices and processes
Migrate and refactor part of the existing code-base to follow new software practices
Define code formatting guidelines and configure linters
Set up continuous integration pipelines
Become the gatekeeper of software being merged
Build processes for release management
Implement new algorithms for robot control and task execution including behavioral trees, state machines, controllers, state estimators, calibration tools, test GUIs, and more
Optimize existing algorithms and software
Must have:
A degree in computer science or related fields
3 years of proven industry experience with C++
Experience with Python
Familiarity with inter-process communication
Professional experience with continuous integration
Experience with code linting practices and code coverage analysis
Knowledge of software profiling and performance analysis
Naturally writes extensive inline documentation
Practical experience with writing unit tests and integration tests
Fluent with git and version control
Fluent with Ubuntu and bash
Nice to have:
Experience with ROS/ROS2
Experience with real-time operating systems
Experience developing software for distributed systems
Experience with Docker
Familiarity with newer C++ standards such as C++17 or C++20
Experience with multi-threading and designing algorithms for multi-thread usage
Experience with designing or optimizing algorithms for GPU utilization
Experience with GUI development
Experience with PyBind
We offer:
Quick development cycles
Test-driven development
Working with a large-scale heavy-duty robot involving both electrically and hydraulically driven actuators and consisting of several distributed sub-systems
Responsibilities from day one and a significant impact on the software architecture and design decisions
A flexible workplace with a versatile team
A workplace in an innovation hub in Trifolium, Copenhagen.
This job comes with several perks and benefits