Lead Software Architect With an affinity for data science
The Challenge Software runs the universe and our developers are writing our company's future. That's why we are looking for a Lead Software Architect to take our company to the next level. Self-starters who will hit the ground running on day one and are capable of managing their own time. We all wear lots of hats and you will too. You will be part of a small but growing development team and increase the velocity of implementing new features, whilst making future-proof decisions on the direction our technology stack will take.
As Sensorfact is expanding to new countries and markets, the number of customers, sensors and data points increases. As a member of the development team, you'll ensure our platform is as solid and as scalable as possible and can handle the growing amount of data. Opening up all this data to our customers, to machine learning systems and experiments, and to third-party systems is a second priority. The more continuous value we can bring to a customer, the longer they will stay and make use of our services.
What you will be doing You will work on the core of our data systems. You'll join an experienced team that is passionate about their work and enjoys working together, sometimes stepping out of the comfort zone of their preferred stacks. We are looking for someone who can be the architect, developer and engineer in one. You will have all the freedom to come up with improvements to process millions of data points per day and extract meaningful analytics from that data in real time. Of course that includes creating on-point documentation for systems you work on, covering them with pragmatic tests and avoiding technical debt. You will be responsible for all facets of software development, from conception to deployment.
The key technologies you will be working with Right now our core platform is based on microservices written in Node.js connecting to the NATS message bus. User-facing APIs are exposed through GraphQL on top of Express.js.
Our frontend is based on React with Cypress for testing. The frontend is deployed to S3 buckets and hosted using a CloudFront distribution. Sentry takes care of automated bug reporting and feedback collection. We have a component library with documentation on design language that is used throughout our projects.
Time series data is stored in InfluxDB and the rest is in MongoDB. Our source code is on GitLab and we use a mix of GitLab CI and Jenkins for CI/CD. Unit tests are written in Jest. We use a combination of CloudWatch and Prometheus for logging and monitoring.
Our micro services are orchestrated by Docker Swarm but we have a prototype Kubernetes cluster in the works. None of these technology choices are set in stone, and we are always on the lookout for improvements.
How we do it We do Scrum with 2-week sprints, sprint planning, grooming and retrospective sessions. Our stand-ups are at 9:30 and if you're not there you can chime in over Hangouts. We keep track of things using several Trello boards (standups, requests, backlog, active sprint, etc.). We keep in touch with each other over Slack.
We know how important it is to get in the zone and write beautiful code so 13:00 to 16:00 we have quiet hours with no distraction (we try). We're setting up processes and tools to enable our team to work fully remote. We're not there yet.
What you bring Here come the bullet points:
Understanding of the operational concerns for cloud-based software deployments
Experience handling large volumes of real time time-series data
Experience with deploying micro-services using Docker and Kubernetes
Experience working in agile teams and Scrum
English fluency and excellent communication skills
Bonus bullet points
Professional experience in a start-up environment
You enjoy sharing knowledge and discussing design decisions
Interested in the energy savings field and the manufacturing industry
Interested in data science and machine learning
A DevOps mind-set
A responsible and flexible attitude
What we offer A fulltime position (32-40hrs), money, pension, lunches, working from home, team activities, training budget - the usual. We work in a horizontally structured start-up culture with an energetic and engaged team, where it is not unusual to have a coffee or drink with your manager and the CEO. Our office is located in the centre of Utrecht, a short walk from the central station. We'll provide you with an NS-business card or cover your travel expenses to get there. We know how incredibly important it is to have the right tools. Any hardware or software you need to get your job done: great monitor, the best laptop, standing desk - you've got it.
About Sensorfact Sensorfact is an innovative and young company that reduces energy waste in industry. 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. These savings are presented in a clear advice report. In this way we help our customers to reduce their energy bill by 5-10%. Sensorfact was founded by the end of 2016 and has since then grown to a team of 40+ colleagues and 250+ customers (including Dr. Oetker and PicNic) in 7+ countries. The development team consists of 5 people now, so you can make a big impact on sustainability in industry.
Enthusiastic? If you see yourself joining a high-growth, fast-paced start up send us your application, because we would love to get in touch. Please include your resume, GitHub and/or NPM username or anything else you think is applicable. If there are any questions, please feel free to reach out to us.