Coaching basketball
My last blog post was on June 17th, 2023. It’s been over a year since I last posted, so what have I been up to? Well, a lot, actually! I finally landed my first head coaching job for the Junior Varsity (JV) basketball team at Richard Montgomery High School in Montgomery County, Maryland. For those unfamiliar, JV teams are typically composed of 9th and 10th graders. As someone deeply passionate about coaching, this was a dream come true.
I dedicate a significant amount of time to watching basketball and learning from top-tier coaches. Coaching isn't just a hobby for me—it's a craft I’m continuously refining, much like my career in software engineering.
You might be thinking, "How does coaching basketball relate to software engineering?" Well, in both fields, constant planning and learning are essential. Whether you're on the court or behind a computer screen, you often start in a junior role before working your way up the ladder. Moving up too quickly, though, can leave you feeling overwhelmed, much like when a developer rushes into a senior position before being fully prepared for responsibilities beyond just coding.
For me, the transition to head coach was years in the making. I spent three years as an assistant coach, during which I was recommended for several head coaching positions. However, I declined each offer because I knew I still had a lot to learn.
During my time as an assistant, I focused on understanding the kind of coach I wanted to be. Sure, I could write plays, design practice plans, and coach players. But being a head coach? That’s a whole different ball game. It comes with a range of responsibilities that aren't as visible from an assistant's perspective.
One of my primary goals as a coach has always been player development. Winning games is important, no doubt, but I believe preparation is the key to success. As an assistant, I worked to set clear expectations for my players, ensuring they were prepared for both practice and game day. I knew that these foundational skills would help them on and off the court, much like how solid coding practices benefit software engineers in the long run.
Then, a week before tryouts, something unexpected happened—the previous JV coach stepped down. I was offered the head coach position by the varsity coach, David Breslaw, and the Athletic Director, Daniel Whitlow. I was both excited and nervous. It was a huge opportunity, but it also came with a lot of new responsibilities.
My first task as the new head coach? Reviewing the paperwork for all 68 registrants and making sure their physicals and registrations were complete. Sounds tedious, right? It was, but it was also necessary. This job required a lot of communication with parents to ensure everything was in order. It wasn’t the most glamorous part of coaching, but like debugging in software engineering, it’s a crucial step in getting everything to run smoothly.
Once the season kicked off, my routine became a whirlwind of weekly meetings with the varsity coach, ad-hoc discussions with the Athletic Director, and constant communication with parents and players. Topics ranged from playing time to highlight requests, all of which required careful consideration and tactful communication.
It was a busy time, but every conversation and decision sharpened my skills—both as a coach and as a leader. In a way, it felt like leading a software development team. You have to balance expectations, deliver results, and ensure that everyone involved is on the same page.
At the end of the JV season in February 2024, I was given another exciting opportunity—to join the varsity team for the remainder of their season and the upcoming state playoffs. However, my role this time wasn’t to coach, but to observe. Much like when I was a JV assistant, I was there to learn and soak in as much as possible.
Watching the varsity team was eye-opening. The game is faster, the players are more skilled, and it was a challenge to keep up. But that’s where growth happens—when you’re thrown into situations that force you to adapt quickly. This experience was akin to my transition from a junior developer to a mid-senior position in software engineering. You have to think on your feet and come up with solutions in real time.
Of course, not everything went smoothly. I made suggestions during games to help the head coach with strategic decisions, and sometimes, I made mistakes. Did I feel bad? Absolutely. But that’s part of the learning process in any career, whether it’s coaching or engineering. Mistakes are opportunities to learn, and they ultimately make you better at what you do.
Remarkably, we made it to the regional championship game and won for the first time in five years. It was an incredible experience, filled with lessons in resilience and teamwork. We then advanced to the state quarterfinals and won, placing us in the final four against one of our biggest rivals.
So, what happened in the final four game? Heartbreak. Rock bottom. Everything we worked for was lost in one second. The season was over, just like that. Our rivals went on to lose in the state championship by almost 20 points. I won't dive too deep into it, but let's just say, we were better matchups for them.
Despite the heartbreak, I walked away from the experience with valuable lessons. In both coaching and software engineering, you have to learn to take the losses in stride and keep pushing forward.
One of the most rewarding aspects of this journey has been coaching alongside my twin brother, who also happens to be a software engineer. Working together has made this experience even more special. We share ideas, challenge each other, and constantly learn from one another—both in coaching and in our careers.
Coaching has taught me the importance of effective communication, thorough planning, and the ability to adapt to new situations. These are the same qualities that are essential in software engineering. Whether I’m on the court or writing code, the skills I’ve developed in one area often benefit the other.
As I reflect on my first year as head coach, I’m excited for what’s to come. The upcoming year at Richard Montgomery High School holds new opportunities for growth, both for my players and for me. I’m eager to see what new skills I’ll acquire that will also benefit my software engineering career.
Until next time, happy computing and coaching!
RO out 🎤