Today was my last day as a Sr. Software Development Manager at BuildDirect. I was short 2 days of spending 1.5 years there, but an opportunity of the type you can’t refuse presented itself, and I ceased it.
BuildDirect was not an ordinary place. It’s impressive to see people getting actually excited about selling flooring online, but that’s what the company culture was about.
I can dig out a number of successes, and a number of failures. Mostly, I’m happy I brought something to the company1, and learned something in return.
- I’m extremely proud of the work we’ve accomplished with one team on focusing on value, and learned a great deal about motivation at the same time. Working with that team was exciting to the point that I would feel chills in my back in a planning meeting!
- I learned a lot about professionalism, ethics, and personal practices from one of my coworkers. While I’ve always considered myself “ethical”, ethics for me was limited to not stealing and not accepting bribes. I learned that it’s a topic that requires conscious application, and is in the path to professionalism.
- I observed that seniority and professionalism aren’t correlated, and that some younger passionate developers can perform in degrees of magnitude better than coders “in the industry” for 20 years.
- I observed once again that technical debt cannot be accumulated sanely, that there’s no such thing as “quick and dirty”, and that taking shortcuts is unprofessional. Producing clean code does not mean polishing it for hours, doesn’t mean that it will take longer (provided that the code-base is not just composed of tech debt), and it’s absolutely, in most circumstances, required. Carefully engineered, and cleanly crafted software delivers better short-term and long-term results, allow for the flexibility required to iterate, and overall, increases the quality, and the value.
- I enjoyed the incredible comfort, certainty and power that comes from an actual CI and CD pipeline, with high-level test coverage, where code gets shipped as soon as it passes code review. Provided that the code review includes verifying the automated tests, and automated tests pass.
- I’ve confirmed that I enjoy starting working with a team that struggles to deliver, and walk with them the path of getting some speed, and increasing code quality.
- Last, but not least, I’ve confirmed my attachment to discovering new contexts, introducing new practices and new technologies to people, working on several initiatives, and that’s what this move is about.
If anything, convince a few people to buy Clean Code and The Clean Coder. ↩