A series of interviews with Springest’s product development team
Like all tech companies, at Springest we love our developers. We just can’t get enough of them. If we were a corporate, we would give them a parking space right next to our office entrance. That’s how much we love them.
We can’t have enough of them either – we are constantly on the lookout for new hires to enrich our team. We look for a certain set of skills but we also look for a certain mindset. And this mindset can be hard to pinpoint. What is it that makes our developers choose Springest? And what is it that makes Springest choose them?
Buckle up. In this series of interviews I will try and answer those questions .
Mark Mulder (32)
Devoted baker, sartorial cycler.
Don’t call me that.
You started working at Springest in 2014….
I am the most senior developer. Not the oldest.
Sure. What is it like, this seniority?
Busy. I am mainly a developer. But I have like 25 other roles at the moment. A lot of them focus on helping the team and helping them solve their problems. That means I hold roles like Architecture and Infrastructure. I also have to make sure that everything is online the whole time. I am on 24 hour call.
I like the extra responsibilities. And sometimes I don’t. It means that you have 10 problems, instead of one. It’s nice because you can solve issues. But sometimes it’s just too complex. It’s tough to find the hours to actually do work as a developer. I could try and balance it a bit more.
In my previous interview with Jordy, he only wanted to talk about himself. I hoped I could get a little bit more technical with you.
It might be quite boring!
No it will be fascinating. Tell me; what programming language does Springest use?
What else changed in the 5 years you worked here?
In one way not so much. We still work with the same codebase: it’s a living and breathing thing that evolves over the years. It’s over 7 years old now. We have often heard great things about the quality of the codebase from new hires, which is great to hear because it’s sometimes hard to appreciate it yourself if you’ve been working on it for years already. You sometimes only see the parts that can use improvement.
I think the quality now has been because of a continuous process of improvement. Next to building new things you have to curate or clean up as well. That is something I’ve enjoyed doing; cleaning up is a nice break from working on complex things, it’s kind of a zen moment and the end result benefits everyone. We’ve recently introduced “Grease week” [red: Grease week and Polish week are used by many tech companies to focus on either internal improvements or user oriented improvements] at the end of every quarter, to focus on making these kinds of improvements.
I’ve also created guides to ensure a uniform way of working. Now for every new change we don’t need to take time and discuss details, like should this comma be placed here or there, but we can focus on discussing the important things. So that has been a considerable change. Also, our documentation on how we work has improved. When I came to trial, [red: at Springest potential new colleagues actually work with us for a couple days] it took two days for the application to be up and running. Now, it has become so clear that you can start working in an hour or two.
All of this is pretty basic stuff actually. And it can be a bit annoying to write it all down. But it’s worth the trouble. To sum it up: we work with the same codebase. But we have gotten more professional.
Can a piece of well-written code move you, in the way that text can?
In some ways yes. The thing is, it’s not something you come across often, because when something works well, you don’t mess with it. The best code, is boring code; nothing too clever so it’s easy to grasp for any reader and open to change.
A while ago I stumbled across code like that, for leaving reviews. I saw that no bug had occurred for over two years. I thought: this looks good. And then I realised it was me who had written it. That’s nice. This usually happens the other way around, when you’re checking to see who wrote a weird piece of code and you see your own name…
You know code is good when you have to update something and you can read straight down through it. When you struggle with understanding, you know it’s probably a complex piece of code that should be improved, to make the complex simple.
So this living, breathing codebase of ours reads like a Harry Potter novel?
It would, if there were 20 novels instead of 7. Our code base consists of so many interrelated moving parts. That is why it takes a while before developers are up to speed and feel confident enough to make changes. But it’s quite inevitable in Springest’s case. We’ve been growing so much. An example is our booking form [red: people looking to learn book courses, e-learning, events and such on Springest]. We used to have one. Now we have 11 versions, adapted for the wishes of our corporate customers [red: big organisations use a custom version of Springest to help their employees reach their full potential]. One with learning budget overview, one with manager approval flows, etc. If you want to change something there as a new dev, it can take a little while before you feel completely safe doing that. I still have trouble myself seeing it all clearly. It is the consequence of growing, and saying yes to all sorts of requests. Or not saying no enough.
You sound like a real senior.
I do miss parts of the old days. It was messy, but we had more freedom to just build the things that we felt like. Randomly. Unstructured. Now we also have demands of our clients that sometimes determine what we do. That means more pressure. More structure. I still need to adapt a bit to that. It’s also the reason that I organise Hack Day. It’s one moment each month where we can go back to that feeling and help each other build things and develop new ideas.
I used to say I loved working at Springest because of the freedom. Now I will say: my team is the most important reason I love working here. We’ve hired a lot of new people over the years and I enjoy being able to help them and mentor them. Iris is most receptive to that. She is very open to feedback and you can tell she appreciates it when you show her something new. She is also skilled when it comes to our finance products. She likes it, I don’t. So I feel reassured to know she takes care of that.
Jordy is also very smitten with Iris.
Go talk to her. And by the way: she is the real senior in our team. But please don’t call her old-timer.