Learn more about

Succeeding as a Senior Engineer at Kraken

Jos is a senior software engineer and team lead of the payments and collections team at Kraken. He is also a line manager and a tech lead. Jos tells us about the environment at Kraken, what his job involves, and what makes working there so rewarding.

Photo of Jos Vennik
With
Jos Vennik

Jos was working remotely for a Japanese company in his home of the Netherlands. After the CEO invited him to try working from the Osaka office, he decided to move to Japan for a year, but then fell in love with his wife-to-be, the food in Japan, and also the new experiences Japan has to offer.

I think a big part of enjoying Japan while you’re here is learning the language and getting to a point where you can actually have conversations with people. You get all sorts of wonderful experiences.

After a number of years and a variety of roles at that company, Jos was looking to test his skills somewhere new, so he joined Kraken in 2022. Jos said, “I wanted to use the experience I had gained, and Kraken really stood out to me with its mission of making the world a better place for green energy and working on transforming the world of energy with modern technology.”

Kraken Technologies, which is responsible for the creation and management of Kraken. Kraken is used all over the world and has to be adapted to comply with the various regulations and laws in different places. Jos said, “Our job is to make those integrations work wherever we are. The biggest piece of the puzzle is, how do we keep one software system working for everything.”

He continues, “In Japan, our main goal is to adapt Kraken to work with the Japanese market. The way energy grid operators within Japan work is unique to Japan. The way we get data from them is something we have to develop, from getting information from the meter outside your place into our databases, calculating how much we expect you to pay, and informing you of that amount. All customer communication goes through the platform too, including phone calls, LINE integration, email, and SMS.”

Everyone using the same product, just under different configurations, results in an incredibly large codebase. Jos said, “If I go away for a day, the master branch has progressed by 300-400 commits. We deploy roughly 160 times a day, to all over the world. Every time we make a pull request, it goes through CI, and we have upwards of 40,000 tests that run for the entire platform. I feel very comfortable that when I press merge, nothing bad is going to happen.”

There’s basically almost no time where Kraken isn’t being deployed somewhere in the world, it just keeps going.

With such a large, heavily-used codebase, technical debt is inevitable. But something that sets Kraken apart from many companies is that they regularly take the time to address their technical debt. Jos said, “Once a month we get the chance to take a look at all the tech debt we have and just focus on that for a day. An example of this is that someone has been making huge waves fixing various typing issues in the project, so we can ultimately update a package called mypy. Things like that just keep elevating the product and make sure that we do our best to avoid more technical debt.”

Jos spent his first six months easing into the codebase, but is now comfortably balancing a number of leadership roles and is focused on making sure his team has everything they need to succeed. He said, “My official title is Senior Software Engineer. It’s kind of between tech leadership and regular leadership. In my case, I’m one of the team leads within the payments and collections team. I’m also a line manager, so I have people reporting to me. We don’t, strictly speaking, have a HR entity, so HR is also part of my responsibilities. I’m also involved as a tech lead on the Tokyo Gas integration project, where I’m overseeing the payments, collections, and billing teams.”

I know my team, and people higher up the chain, all have my back. I don’t feel overworked in any shape or form. Having a support system in place makes it all better.”

When Jos started, he joined the Japan financials team. But last year the Japan, New Zealand and Australian teams came together, and new regional teams were formed. It was a stressful time, but by keeping the team in the loop he feels they’ve weathered the changes well and have come out stronger. He said, “I’m particularly proud of the team that we have in Japan, how we’ve been able to go to an APAC level and come out looking incredibly strong as a region. We’ve been pioneering a lot of team structures and various different roles within the region that are being run globally.”

Since joining the company, Jos has been impressed by just how much effort is put into creating a supportive and relaxed work environment. He said, “The mantra is very much that if you experience stress, give that stress to your manager. If your manager experiences stress, they give it to their manager and it gets passed all the way up. Everyone can still experience stress in some ways, of course, like, ‘I blew up production,’ or ‘It’s going to be difficult to hit this deadline.’ But as long as you communicate things, there are a lot of people standing by to help you.”

We heavily operate under a no blame culture, mistakes happen, but what matters is how we respond. Everyone has unexpectedly broken the main branch at some point, but thanks to our tests the chances of that code reaching production is very small.

Everyone is given a lot of autonomy from day one. Passing the interview is viewed as a sign you deserve that trust and can take initiative. Jos said, “Everyone is ultimately encouraged to do what they like to do, and what they believe themselves to be good at or want to get good at. For some people this is digging straight into technical debt, for others, it’s leaning on their prior experience and suggesting improvements. They throw out a proposal within the first few weeks, and that is definitely highly encouraged within the company. There is no predefined image of, this is a developer, this is what you do. Everyone has strengths in different areas, so we like to lean heavily on that to get the most out of everyone.”

One of the first projects Jos implemented after joining Kraken was one that allowed customers using solar panels to be compensated for the energy they were putting back into the grid. It involved multiple teams working together to get the required information from customers and industry clients, and Jos is proud of his contributions to that project.

Kraken empowers their developers by rewarding their efforts with opportunities. Jos said, “Showing diligence and interest will move you to where you want to go, ultimately. Where there is a possibility, and people show they’re keen to get involved and can elevate this part of us, they’ve been straight up promoted to lead projects. In general it’s very possible to switch teams within the company. We have some folks who rightfully believe they can become a better developer in one area by spending time in the other areas. I’ve personally not gone that route, but I’ve seen a variety of folks switch around and it’s never taken in a negative light.”

If you spend the time truly investing in someone, maintaining those people and keeping them happy is ultimately a much better boon than them looking for a new job.

While Jos enjoys working with his team in the office, he currently works completely remotely with flexible hours, and appreciates the extra time that gives him with his family. He said, “We don’t have an office in Osaka, so I have a good excuse. I start super early, usually working from 7:30 a.m. to 4 p.m., and at four I’ll go pick up my son from daycare. In some cases, for example, when a junior developer joins the company, they’re encouraged to go to the office more, where team leads may also be more present to support them.”

Jos thinks it’s important as a leader that he sets a good example of work-life balance for his reports, and that includes taking regular leave. Kraken’s unlimited leave policy means no one has to worry about missing out on vacation time if they need to take time off to deal with personal matters, such as illness or looking after children. Jos said, “It’s not what you might see in the news, where if you have an endless policy no one actually takes holidays. Ultimately, we have several pools. One does have a number, for Japan I believe it’s 23 days, and you are encouraged to take all of those days. But after that, we understand things come up in life, or you want to take some extra time, that’s all up to your discretion.”

I get leave requests from my reports and for the most part it’s just a straight up approval, because there’s just a level of trust that if you have a contractual deadline that’s at risk, you wouldn’t take that holiday to begin with.

For Jos, the biggest challenge since joining Kraken has been learning to be comfortable with being uncomfortable. He said, “There’s a lot of things you don’t know, and that’s fine. Like, you get given a job, and you have no idea what it is, what does that acronym even stand for? Being able to take that and just go with it, talk to people and figure it out. That kind of flexibility and need to be proactive was quite different from what I had experienced before. It’s a big challenge, but a fun challenge and good for your own development as well.”

Jos recommends Kraken to developers who are keen to be constantly learning, delving deep into a large codebase, and making the world a better place. He said, “It’s a great place to rediscover what it’s like to work at a tech company with endless opportunities to dive into, with folks who are equally motivated to learn, and where you can blow up and fix production together. It does take a certain kind of person to do well in this company. But it’s definitely for people who enjoy figuring things out in an environment where you get that freedom.”

Open Jobs at Kraken