Senior R&D Software Engineer - Simulation Team
To meet an exciting, sustainable, and expanding future, we are seeking a Senior R&D Software Engineer for helping us to improve and develop the fishery and naval products of tomorrow.
You will be part of the Simulation Team, who designs, creates, and builds underwater sound propagation backend models able to simulate the whole company echosounder and sonar products portfolio. While the simulation is one our main tasks, we also work on other important and transversal product features related with underwater sonars and echosounders. We always try to correlate, improve and update the knowledge we get from both realms, bettering and incrementing both sides of our products.
Physics govern the nature… but we do our best to rule the code that best resembles it!
More information about our products can be found at:
What we will do together
You will play a crucial role in test-driving, iteratively and incrementally, the development of systems which best recreates the real behavior of Kongsberg Discovery underwater acoustics products when surrounded with different ocean environmental scenarios and its corresponding physics. Our simulator is a state-of-the-art solution which provides efficient ways for students and crew in carrying out safe and sustainable fishing and naval operations.
You will additionally work in close collaboration with multidisciplinary teams. We value not only producing features, but also keeping a sustainable and healthy environment. It is vital for us to develop robust, scalable, easy to understand, change and evolve software solutions, following all the way from newly hatched ideas to finished market products. In this endeavor, we use Test-Driven Development whenever it’s possible and, when it is not feasible, we take care to test it thorough a trusty safety net with the best strategy we can find.
- A master’s degree in telecommunication engineering, computer engineering, computer science, mathematics, or similar. Experience can compensate for a degree.
- Able to produce both maintainable and efficient code using Object Oriented Programming.
- Proficiency in the English language, both spoken and written.
- 5+ years of experience as a software engineer, familiar with the following:
- Software architecture, design concepts & patterns and best practices.
- Strong C++ and C# skills.
- Extreme Programming (TDD, Refactor Mercilessly, Pair Programming, CI …)
- Good software and system testing strategies criteria.
- Experience reverting and getting into control Legacy code while effectively working with it.
- Digital Signal Processing.
- It is beneficial with experience within one or more of the following areas:
- Ensemble Programming.
- Continuous Deployment.
- Trunk Based Development.
- Azure DevOps.
- Visual Studio & automated refactoring with Resharper.
- Mathematic modelling.
- Real-Time systems.
- Previous experience with tele detection systems.
- GPU Parallel Computing.
You are not expected to master all the items above, but we hope that you are eager to learn and develop within these technologies and competencies. We are looking for a software engineer with solid industrial development background.
What do we expect from you
- Quality-first advocate, convinced about the false dichotomy between Quality vs Speed.
- Enjoy both test-driving brand-new code as well as safely refactor and evolve Legacy code.
- Strive to relentlessly improve the solutions you deliver, the development process you follow, as well as your skills and the ones of the team you work with.
- Value what you produce as much as the way you produce it.
- Create a stable and reassuring work atmosphere, and support and encourage the team.
- Analyze complex issues and problems and come up with rational judgments.
- Communicate in a clear, precise, and structured way.
- Co-operate well with others, share knowledge, experience, information, and support others in the pursuit of team goals.
- Be aware of own strengths and limitations and pursue learning and career development opportunities.
- Able to travel abroad usually twice per year.
What more we can offer you
- Competitive salary and benefit packages.
- Highly flexible work hours and holiday arrangements.
- Hybrid and flexible working set-up.
- Career development opportunities in an international environment.
- An inspiring work environment, with the possibility to work with sustainable and exciting solutions for the future.
- Be part of a small & distributed team, which highly values technical excellence as a mean to reduce its lead time to market.