Job Description
Your missionSoftware runs the universe and our developers write our company’s future. That’s why we are looking for a Full Stack Developer to strengthen our development team. Our company is growing fast, and so is the list of feature ideas and the scale of our platform. Your challenge is to turn good ideas into practical results, and make sure the quality of our code remains high. With your work we can deliver all the features our 400+ customers want, without compromising on performance, reliability or scalability. We value ownership: as a full stack developer you will be in charge of the complete lifecycle of features. Our development team is small and tight-knit, so your work will have a massive impact on the company: features you build will be used daily.
Curious about what you will be doing?
You will be developing new features on our platform, for example new interactions for our customers to discover insights from their data, scalable data ingestion for new sensor types, or new diagnostic tools to enable our customer support team.
You’ll interact with several departments in our company: consultancy and operations who use our in-house tools, and product managers to discuss potential solutions for the product roadmap.
As a medior you are expected to define and run projects, and take a broader perspective than just pushing tickets. You can chime in about strategic topics like tech roadmaps and tool choices that seniors propose.
You work together with the other developers by sharing knowledge, discussing tech solutions, improving our own tools and processes and reviewing code.
You have the opportunity to work with state of the art languages and frameworks, within a modern cloud architecture on AWS.
Being part of a scale-up, you are proactive in prioritizing and solving the needs of our fast growing group of customers.
Curious about the technologies we use?As we are scaling up our platform with a small team, we leverage new technologies to keep performance and productivity. Right now our core platform is based on microservices written in Node.js connecting to the NATS message bus. We're moving to TypeScript where we can, and we're on the lookout for a replacement of NATS. Last year we moved all our microservices to a Kubernetes cluster, and recently we developed a couple of lambda functions that are used in production now. Data is accessible through GraphQL APIs managed by Hasura. Time series data is stored with InfluxDB, Postgres is our workhorse, and we have a few MongoDB instances still chugging along. Our frontend is based on React with Cypress for testing. The frontend is deployed to S3 buckets. We have a component library with documentation on design language that is used throughout our projects. Our source code is on GitLab and we use a mix of GitLab CI and Jenkins for CI/CD. Monitoring of our platform is done with Prometheus and Grafana, and we keep an eye on our front end with Sentry.This is how we do it!We do sort-of-scrum with 2-week sprints, sprint planning and retrospective sessions. We do digital daily stand-ups. We keep track of things using Linear, Google Drive and Outline, and we stay in touch with each other over Slack. The course is determined by goals, set collaboratively by business, data science, development and product teams. Developers are involved in the entire process: from ideation and refinement to concrete project plans.We know how important it is to get in the zone and write beautiful code so we schedule most meetings in the morning and keep the afternoon quiet (we try). We have a professional culture of testing and code reviews. We work from home about 90% of the time, but we enjoy meeting each other in the office in Utrecht every now and then - covid allowing of course.
Your profileWe are looking for you because you...
Are a medior (4+ years) full stack developer, with experience developing front-to-back features for cloud-based software;
Thorough knowledge of Javascript and Node.js;
Have experience with at least few of the technologies mentioned above: Node.js, React, Typescript, GraphQL, PostgreSQL, time series DBs etc.
You are not just pushing sprint tickets, but like to interact with users, stakeholders and colleagues to design solutions, discuss planning and prioritize. Experience in (assistant) project management is a plus.
Are fluent in professional software engineering practices (version control, merge requests, testing, code standards, CICD);
Have a MSc in Computer Science, Distributed Systems, Artificial Intelligence, or a comparable analytical / technical field;
Are passionate about one of the following (the more the better!): serverless and event-driven architectures, communicating data insights with visualizations, building future-proof solutions, saving our climate, scale-up life;
Are fluent in English, and familiar with Dutch culture;
Why us?In turn, we offer a full time position (32-40hrs), money, pension, lunches, working from home, team activities, training budget – the usual. We work in a forward-thinking start-up culture with an energetic and engaged team, located around the corner of Utrecht Centraal. We’ll provide you with an NS-business card or cover your travel expenses to get there. We are an English-first company, with a range of nationalities in the team. We don't support fully-remote positions unfortunately, since real-life interaction every once in a while is vital to us.We know how incredibly important it is to have the right tools, so of course we'll provide you with whatever you need to get your job done: monitor, laptop, coffee, office snacks – you’ve got it.
About usAbout SensorfactOur mission is to reduce energy waste in industrial companies. We do this by making energy saving easy. Therefore, we have developed a plug & play Energy Management System that consists of wireless sensors and a clear online platform. Our algorithms analyse the data and detect potential energy savings. This way we help our customers to reduce their energy bill by 5-10%.