OBS! Ansökningsperioden för denna annonsen har
passerat.
Arbetsbeskrivning
As software engineer in the Edge Team you will be part of the team that is responsible to deliver monitoring, traceability and control for all machines in our factories. Your software runs on our edge gateways, which are the link between the PLCs that control the machines and the cloud. It runs 24x7 on our fleet of thousands of devices across the world and enables Northvolt to make better decisions
The data we collect monitors and drives our production process and provides a live report on how every cell is manufactured. To make this happen, you talk with the control engineers, suppliers and other cross-functional teams to understand how the machine is built, what its software interface looks like and how to get the data we need. Then you design, write, test and deploy an application to collect the data and integrate the machine into our production process.
Part of that process is to manage the software that runs on our fleet of edge devices. This requires to deliver software and OS updates to thousands of edge gateways remotely, reliably, securely and at scale. For this, we have built a custom fleet management system and Linux distribution that you and the team continuously improve.
How we work
Our software is written in Go and we open source software like https://github.com/gopcua/opcua. We choose carefully which services, tools and libraries we use since we need to have long-term maintainability in mind. Because of this, we try to focus on simple solutions that we can write ourselves and if possible rely on managed services from AWS. To organize the work we use a Kanban style workflow which focusses on managing priorities and allowing us to complete projects.
What we expect from you
We require some basic understanding of algorithms, data structures, concurrency, distributed systems and eventual consistency but you don’t have to be an expert. We value passion, curiosity and willingness to learn on the job and teach you what you need to know.
You know how to explain your ideas to your peers and like to find solutions to complex problems. You are comfortable to work independently and value the support you get from the team. You are comfortable to challenge the status quo since we don’t have all the answers either.
Our Interview Process
Our interview process is structured to determine whether you have the necessary skills and/or potential to do the job. We are open, honest and polite and it is important to us that you to feel comfortable during the interview. For that, we only ask relevant questions and will not waste your time with brain teasers or extensive coding exercises. Most of the knowledge has to be learned on the job anyway.
Skills & Requirements
Basic knowledge of algorithms, data structures, concurrency, distributed systems and eventual consistency
Experience with one or several programming languages (Go, Python, Java, ...)
Good communication skills, a learning mindset and the ability to Get Stuff Done
Passion for solving problems with technology
Keywords: Go, Python, algorithms, concurrency, data structures, distributed systems, eventual consistency, automation, DevOps
Öppen för alla
Vi fokuserar på din kompetens, inte dina övriga förutsättningar. Vi är öppna för att anpassa rollen eller arbetsplatsen efter dina behov.