Flock.ing @ bol.com: Conclusion, learnings & next steps
Photos by: Elisabeth van Lent Photography

Flock.ing @ bol.com: Conclusion, learnings & next steps

This is the fifth and final part of a mini-series about Flock.’s involvement with the mobile app development at bol.com. Be sure to read part 1 to learn more about the mini-series itself.?

Looking back, the two years I spent at bol.com were a crazy ride indeed. When I started I felt like a total newbie for a moment. To be honest, I wasn’t sure I fitted in.?

My new job wasn’t the only new thing in my life at the time – I had just received the keys to my first own house?in Utrecht, I needed to learn a new language (Kotlin) and familiarise myself with a completely new paradigm: reactive programming. To top it off, there were over 80k lines of code and a huge functional domain waiting for me to digest: a prerequisite if I was to be of any use to the Mobile App family. You see, a lot of what happens at bol.com comes together in the mobile app, which means if the app doesn’t work, a huge portion of bol.com’s business is basically down. It would be quite an understatement to say that the team I joined had a lot to do. Sometimes it felt as if I was in a pressure cooker with a lid tight on.?

"Life begins at the end of your comfort zone"?

From my current perspective, I have to say my 2-year adventure at bol.com forced me to step up my game, become a better software engineer and discover a thing or two about myself. But before all the blessings came raining down, I had to do a lot of work.

Day 1, 19 March 2019

My very first day with the team: a planned team building day, full of exercises to help us get to know one another.?All those people there seemed so much more advanced than me. Not to feel like a total misfit, I bluffed something about my high ambitions and far-reaching plans (I was definitely overreaching at the time).?

At the end of the day we did the on-site escape room, which was great fun. And then came my biggest surprise: an analysis of the results pointed me out as the perfect candidate for a team leader. I felt awkward but flattered nevertheless.

No alt text provided for this image

Afterwards we went out for a bite to eat. Everybody started sharing about their experiences, consistently referring to stuff that “every engineer has done in their time”, some of which I hadn’t even heard, let alone experienced. Again, I couldn’t help but find myself totally out of place. That was the moment I realised I really had to prove my worth in the coming weeks if I wanted to keep this gig.

One week

It didn’t get much better too soon. The first few days left me even more overwhelmed. Not only did I have a lot of catching-up to do (the 80k LoC and huge functional domain I already mentioned) but I had my own doubts about e-commerce, too: I wanted to be part of something with social importance and not focussed exclusively on making money (call me a dreamer). What is more, the seemingly freewheeling team of 7+ developers was responsible for 6 additional applications, some not even related to the mobile app, and they were able to get it all done without a hitch. TL;DR: I had quite a steep learning curve awaiting me!?

Two months

It was only after about 2 months that I stopped complaining and started to settle in my new job. It was tough for a very analytical, rational person that I am to stop comparing myself to others and, in consequence, beating myself up for my shortcomings. Instead, I started to embrace those around me and learn from them rather than be envious of their expertise. I made an effort to join in on complex projects and started asking more questions to gain a deeper understanding of the subject matter. More and more often I was able to use my own strengths: association and observation. I identified and linked related discussions, connected people or teams who dealt with similar problems. I asked all the dumb questions and acted as a sponge. In the end I often became the linking pin between business and IT, facilitating in exchange of ideas and concerns.

One year

A year into my assignment I shed most of the insecurities I’d been dealing with earlier. The reactive paradigm and Kotlin all made sense to me now and I often found myself teaching others rather than vice versa. I started to have a lot of fun in the tech organisation of bol.com which, I realised, focussed on user experience, technical stability and quality a lot more than ‘just making money’.?

Take small steps every day, until you reach your goal

In the months to come, I played an increasingly prominent role in the app family, namely by:

  • Taking a leading role in crucial functionality: migration of session management,
  • Making a stance for a better forced update mechanism (read part 2 for the details),
  • Taking a prominent role in organising the backend chapter during the organisational shift (read part 4 about the shift). The chapter is the entity formed by all app family backend engineers to advise on quality, continuity and operations,
  • Leading the setup of the new internal architecture of the app’s API backend service (read part 4 to learn about the new architecture),
  • Joining the experiment to pioneer a team that combines app and web development for one specific organisational domain: product search.
  • Battle fiercely for balance between innovation, maintenance, quality assurance and operations.

Learnings and takeaways:

All in all, I may conclude I’ve made quite a leap in the past two years, both personally and professionally. My main takeaways are:

  • Dealing with a lot of changes simultaneously is tough. Being hard on yourself and expecting to learn very fast isn’t the best approach.
  • Being honest to yourself about your own skill set is important. Being more in touch with your emotions and accepting help from others leads to growth.?
  • Compared to NGOs, e-commerce doesn’t have much social importance, but I was a bit too quick to judge. It isn’t all about the money either. I discovered bol.com as a real tech company, giving engineers thrilling possibilities to grow.
  • The organisation of roles at bol.com brings empowerment. Tasks, responsibilities, and authorizations are on point, enabling engineers to take on projects autonomously. A direct result of this approach is a strong sense of ownership within the app family.

And on a more technical level:

  • Kotlin is a truly awesome language! Nullability embraced in a typesystem, named and default parameters in classes and functions, functions as first level citizens, extension functions and the interop with Java are some of the features that make it such an amazing language to code in.
  • To a fan of both intricate details as well as helicopter view, designing APIs is actually quite fun to do, more often than not considering Occam’s Razor.
  • Delivering software that’s handling requests from mobile devices that often aren’t?updated on time, calls for excellent backward compatibility. Trying to get rid of a functionality is difficult, forcing you to go ‘first time right’.

What’s next?

Everything comes to an end, and new opportunities unfold when it’s the right time. In February this year I decided to leave bol.com and move to my next assignment: Malmberg, an educational publisher. I’m working on a digital adaptive learning platform called Bingel for primary school teachers and students. It comes with some new and some ‘old’ challenges. I’ve got to turn back to Java again, brush up my frontend skills (Angular) and get familiar with the AWS cloud platform. Yet at the same time, Malmberg, as part of Sanoma Learning, is aiming to become the frontrunner of the digital education platform space. There are some great challenges ahead that my job at bol.com geared me up for: going international, team- and codebase reorganisations, both local and global. There’s more than enough to do and learn in the coming months!

Malmberg method PlusPunt, a mathematics methodology.

A small recap of the series: in the first article, I described the culture at the company and gave a high-level technical overview of the software running bol.com. The three articles that followed each described one of the many projects that I’ve been part of: Mobile App Updates, the Multilingual App, and Refactoring The Mobile App API.?

This post concludes the series. Thank you for joining me on this crazy adventure at bol.com. Feel free to react, comment and share. If you’d like to know (even) more about me, Flock., bol.com, software engineering or anything else, just let me know! I’ll be happy to share.?

Jarno Walgemoed

Director, Co-founder & Agile Software Engineer at Sourcelabs B.V.

3 年

Nice series of posts, Julius van Dis ! Fun to read about your journey, even for someone who’s been on the inside as well (albeit in a different corner of the company) ;)

Melle Moorman

Product Leader at Sunweb Group | Head of Product | Driving B2C product growth ?? | ex-bol.com | Conversion mindset ??

3 年

Will never forget your talk: a session about sessions ?? "Life begins at the end of your comfort zone", hitting the mark there ????

要查看或添加评论,请登录

Julius van Dis的更多文章

社区洞察

其他会员也浏览了