I often ask others engineers to describe to me what “good code” looks like. It’s also a pretty good interview question, as it gives the interviewer an idea of the types of things the candidate finds valuable in their work. In a way, it’s a measure of their coding craftsmanship — what they hold up as core tenets and how they will code review others on your team.

In their response, they will likely bring up the notion of “clean code” or “code that’s easy to read”. This is where I like to challenge them:

“What does clean code actually mean? What makes code easy to read?”


This week I got to sit down with Robby Russell on the Maintainable Podcast to chat about technical debt: what it is, how to avoid it, and how to get rid of it when you’re already knee deep in it. I feel that there were a few ideas I didn’t say very elegantly (doing a live podcast is hard!), so I thought I’d do a follow up post to clarify. If you haven’t had a chance to listen to the episode yet, I recommend you do that first before continuing to read.

What is technical debt?

First, let’s define our terms. When it comes to “tech debt”, it seems there is disagreement in the community as to what that actually entails. Is really old code considered “tech debt” if it’s fully functional, bug free and has excellent test coverage? What if the original author is no longer around? What if it’s got terrible documentation? …


When interviewing developers, one of my favorite questions to ask is:

What is the worst bug you’ve ever encountered?

As an interviewer, I’m looking to get a glimpse into what types of issues this person finds challenging and what they remember as a lesson to take with them into their future. It‘s a good question because it forces the interviewee to tell a story (so you can evaluate their communication skills) and you get a good glimpse into what their debugging process looks like. …

About

Ev Haus

Head of Technology at zenhub.com, Founder/CEO at globexdesigns.com, Owner of Magna eSports, Musician, Libertarian, Human

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store