By Benjamin Chodoroff
Benjamin Chodoroff’s STEM of choice is sort-of math and sort-of engineering: computer programming. He started writing computer programs on his TI-85 calculator in 9th grade, and got interested in building websites for anti-war organizations. He found a career as an independent contractor building small database applications & prototypes for all sorts of clients. After work, he plays with radios, learns about programming theory, and mentors new programmers.
I took a circuitous, but not so rare, path to my career as a computer programmer: I started learning on my own in highschool, not really realizing that it could potentially be a lucrative career. I programmed little scripts to make my life easier, built websites for friends, and automated tasks for small businesses, but never really took it seriously — the reward of figuring out a complex puzzle & understanding large systems was reward enough.
During highschool, I was very lucky to be friends with another computer programmer. While we did enroll in an as-of-then-brand-new AP computer science course, we were much more interested in learning everything we could about programming on our own. We were very different types of students in school, but neither of us found the inspiration and fun in our classes that we found while building our own projects.
After high school, we were both lucky to find meaningful and challenging careers as programmers without college degrees. While he worked in enterprise software development, I consulted with small businesses, building them websites and databases. I started to help out with free software projects, which has become a fulfilling and consistent aspect of my day-to-day work. I did study at colleges a bit, but didn’t take any engineering or CS courses — it never occurred to me as something I would go to school and learn when there were so many people willing to pay me to build something already.
I sometimes run into issues where I think to myself, “this might be easier if I’d taken a course in this-or-that theory,” but it’s pretty rare. When it does happen, I have a great excuse to dive into some books, ask a friend, or simply discover a solution on my own.
Sometimes I wonder what would’ve been different about my life if there were more programmers in my middle or high schools, or if there were active FIRST robotics programs — I bet there would’ve been more, and more diverse, software developers popping up!
I didn’t have many mentors until very recently in my career. It’s only been over the past few years that I’ve had the chance to work with people significantly older than me. With programming, it’s easy to rely on reading books & articles on the web in lieu of having a mentor, but you miss out of some of the more esoteric skills, like how to manage client relationships & how to balance work and free time.
I love working as a programmer — I’m forced to learn new things all the time, and I deeply enjoy doing so. The prospect of being too out-of-date might be daunting sometimes, but after a while you realize the the core concepts never change — you just have to learn how to apply them to new things, all the time.