About this site

Hi, I’m Andre. I have almost 25 years of backend coding experience, predominantly with JVM stacks. For the previous five years, I have been building, running, and maintaining event-driven services in the Identity space. These services have scaled out to manage several hundred million users and serve thousands of requests per second.

My specialty is Java, Kotlin, Spring, and AWS services, and you will find biases toward those technologies on this site. I love all technology, though, and given enough time, I am sure the topics I cover will expand.

Besides technology, I am an uber-cycling geek, and I love bicycles as much as I love riding them. I am fully in the n + 1 camp when it comes to determining the optimal number of bicycles to own.

My aim with this site is to share my experience and, at the same time, enrich mine. I have learned that you can master a topic if you know how to teach it, so this site is as much for you as it is for me.

More often than not, during the interview process for developer roles, there is a focus on specific technical skills, not to mention the strange obsession some companies have with ‘LeetCode’ style questions. In my experience, Software Development is so much more than that. As you progress up to Senior and beyond, you should have developed a good grasp of several of the following areas:

  • Architecture: Building new features often requires some architectural skills. An existing architecture likely constrains these but still requires you to have some system design knowledge.
  • Operations: The running, maintaining, and fine-tuning of services.
  • Dev-ops: The deployment pipeline from code review to production.
  • QA mindset: Some companies have eliminated testers and QA departments, relying on developers for that role. This is especially prevalent in organizations where developers are responsible for running their services. Not being woken up in the middle of the night is a good motivator for building quality services.
  • Security/Risk mindset: Data privacy and being on top of vulnerabilities requires awareness of secure coding practices.
  • Soft skills: Seniors are responsible for mentoring and communication between stakeholders and often may take on feature-leading roles, which involve leading a small project team to implement a new feature.
  • Technology specific: Be it tech stack, environment, front end, back end, performance, we all end up in a particular niche. Becoming an expert in an area while maintaining a broad foundation can help set you apart.
  • Coding skills: I put this last because it’s a given that coding is what developers do by default. Clean, simple, maintainable, and testable code is what we should all be aiming for.

Looking at the above list, you can see that coding only accounts for a subset of a developer’s responsibilities. I have seen it suggested that perhaps what distinguishes developers and engineers, other than a title, is the ability to master all of the above skills.

Covering that entire list is a big ask for one person, so let’s see how I do it. I would love your constructive feedback, so feel free to contact me.

About this site