Software Engineer
- Remote
- Utrecht, Utrecht, Netherlands
- ILPT Engineering
Job description
👩🏫 Who are we?
We at Infinitas Technology (the technology and product development arm of Infinitas Learning) are passionate about understanding and transforming the way people learn. We create educational solutions that touch the lives of everyone around us – both personally and professionally.
For everyone who discovers. For everyone who grows. For everyone who performs and challenges themselves. For your smallest dreams and your biggest ambitions. Learning will take you further. From your first day at school to the next step in your career. Infinitas is there for you and everyone who learns.
👩🏽💻 What do you do?
As Software Engineer at Infinitas Technology you are responsible for the delivery of digital products as part of cross functional product teams, along with the Product Manager and UX designer. You build software that underpins the Digital Technology strategy in collaboration with other engineers. To learn more about Infinitas visit the home page of this career site.
Our products are all hosted on Azure, and while we do have some legacy technology (who doesn't?!) our new products and platforms are broadly based on the following technologies:
- NodeJS - which is using NestJS, NextJS, Express or Apollo Server
- JavaScript/TypeScript and React
- MongoDB, SQL Server, Redis, PostgreSQL
- Git (e.g. GitHub)
- Rest and Graphql API's
- Modern agile practices with Kanban
- Modern software development practices (e.g., TDD, CI/CD, IaC, test automation)
- Infrastructure as code (e.g. Terraform)
- Snowflake and DBT (for our data platform)
✨ What levels are we recruiting for?
We are hiring at all levels, and we are looking for people from diverse backgrounds who can work together to help us build great products that make a real impact. We have a growth oriented career model, that can allow you to join at the right level, but also to learn from your peers and other senior engineers to grow and develop over time.
- Medior: Engineers are responsible for picking up specific tasks within a team (where the solution has been largely decided upon already) and completing them independently, and carrying out more complex tasks with the support of a senior engineer (where the solution still needs to be determined).
- Senior: Specialist in one area of our technology platform (e.g. backend JavaScript, .NET, frontend, testing or operations automation), with significant experience individually owning large parts of a software architecture. Provides mentorship for engineers. This is the level after which we expect most engineers will decide to move into either a technical specialist senior track (towards Principal Engineer) or focus on people leadership and delivery and move towards the Engineering Manager. We would expect that Senior Engineers who are working towards the Engineering Manager track would take leadership roles within their teams to develop those skills while still operating primarily as an individual contributor.
- System: Multi-skilled generalist, typically with one or several key strength areas, responsible for owning large sections of our technology architecture and strategy across segments, providing mentorship and guidance for all engineers in our company for the specific area. By default they will operate within a product team day to day, but can also be engaged (like other engineers) in PE projects to drive improvement across the engineering team. This is not a people management role, but a technical specialist driving innovation and best practices across all teams in ILPT.
🧑🏾🤝🧑🏼 What are our values?
- Mission Driven: We reflect the values of the teachers and learners who use our products
- Open and Empowered: Creativity blossoms only when freed from fear
- Servant leaders: Leadership is approachable and supportive
- Diverse and Inclusive: We take strength from our diversity
- Reliable and Accountable: We do what we said we would, and take the responsibility we have in owning the products across ILPT seriously
Job requirements
📖 Who are you?
While we don't like creating a detailed set of criteria that then filters out some potentially great candidates, it is important you have an idea of the type of thing we will be looking for after you apply - so please take these as a guide, but if you are uncertain please don't let it stop you applying!
- Some experience as a software engineer - the amount of experience will be the primary guide to the level you should join at and so drive your renumeration, but if you are at the start of your career please also apply and we may have a role for you!
- A bachelor’s degree or accredited professional certification in a technical major is helpful but not essential, we recognise that expertise can come from many sources.
- You are comfortable working within your team on the mantra ‘you build it, you run it’
- You are proactive and solution focused
- You want to build solutions that are high quality, but also understand that our products only have impact if deployed - so no point aiming for perfection.
- You find it fun and important to share your knowledge and learn from others.
- You are happy to work in a dynamic and agile environment, where as we learn we will also be changing direction.
- Excellent written and verbal communication skills and able to communicate in English (though we can also help you to improve with this if you aren't yet confident!)
- You are located in Europe - we do not have the possibility to hire anyone outside of Europe.
🏆 What do you get from us?
- The opportunity to work in a domain that makes a genuine and positive impact on the society we live in
- The chance to work with a diverse team across a range of European countries and learn how education can be both the same and different at the same time
- Ownership of the things you build, support to grow and a clear and structured career path built on a growth framework
- Possibility to move around different teams to solve different problems and broaden your experience within the company
- Attractive and flexible employment conditions
- Flexible working hours depending on team requirements as to how, where and when you work
- We can directly employ in a broad range of European countries, and can consider sponsoring re-location in those we have offices
- A competitive salary and benefits (that will vary based on your location due to local expectations or requirements)
⏳ What happens after you apply?
- Your application will be reviewed by Carl, Head of Engineering and Eline, HR. They will both decide if we see a potential fit with one of our open positions. We aim to have a response within 5 working days if we see a fit. If not we will also let you know and explain why.
- When we see a potential fit with one of the open positions you will be invited for a Coding - and a System Design Interview (1 hour each). The purpose of this interview is to test your problem solving and coding abilities and to check what level you are in our job framework.
- If successfull you will be invited for an interview with Carl, Eline and the Engineering Manager of the team we see you would add most value. In this interview we are interested in your remote working experience, your ambitions and the things you are most proud of. You will also get the opportunity to ask any further questions
- We ask that each interviewer submit their notes and decision independently, and then review those notes together to make a final decision.
- If successful we will contact you to make an offer, if not, we will contact you to let you know why not.
⏰ Important to know ...
- All interviewers are trained by our HR team, and will have a set of standard questions to choose from to make sure that we gauge all candidates equally and as much as possible without bias.
- We won't do any white board algorithm excercises, we are focused more on getting to know you you as a human being and future colleague.
- We will treat you with respect at all times and provide feedback if you are not successful.
or
All done!
Your application has been successfully submitted!