Changing Course — Why I Want to Be a Software Engineer

Charles Wisoff
3 min readJun 4, 2020

Last week was my first week in the Flatiron Online Software Engineering Bootcamp. It’s been a long journey, and I want to share how and why I got here.

I’ve worked in the tech industry for the past five years. I’ve been a startup founder, product manager, and project manager. While I’ve enjoyed these roles, I’ve decided that the best next step in my career is to work as a software engineer. It’s time for something new that’s more aligned with my career and life goals.

Five years ago, I founded a civic tech startup called CivNet. It was an online network for civic and political groups to better connect and organize. Prior to CivNet, I worked at a foundation as a research assistant studying democracy. I had no tech experience, but I thought I had a great idea, so I took a couple of software engineering MOOCS and built a demo platform in Python and Django. Granted all that code eventually got thrown away, it was enough to prove the concept, recruit a dev team and raise some initial money. I ran CivNet for 3 years and then decided to wind it down for personal and financial reasons. Afterwards, reflecting on what I did and didn’t like about being a startup founder, I settled on two potential career paths; software engineer or product manager. Both roles would allow me to focus on one of the aspects of technology I love, creating and building new things. At the time, I settled on the product manager path.

Along the way, I continued to gain skills and experience relevant to software engineering. I managed teams of developers and designers ranging from 2 to 20 people. On the smaller teams, I took the opportunity to help out with coding where I could. I coded the redesign for CivNet’s splash page and learned Bootstrap while doing so. At the next startup I worked for, parts of our engineering team had a minimalist and javascript purist approach. With their guidance, I built most of our original splash page using vanilla javascript and a minimalist CSS framework called Tachyons. For one of the features we prototyped, I helped build an app using choo.js. In transition after that startup, I considered software engineering again. I started teaching myself Ruby by doing Codefights challenges and building a checkers game. I built myself a personal website using React in order to learn React.

Most recently, I worked as a product and project manager at RS21, a data science and visualization company. Although I liked aspects of the job, I found myself wanting something different, something more. I love creating and building technology, but I want to have a more direct and tangible effect on that building process. Product managers get to build things from afar. One of the things I like about software engineering is that I get to build things from the ground up, to solve puzzles with discreet answers. In addition, success in product management can be very nebulous. Particularly with newer products, there are a lot of factors that are out product managers’ control. The best you can do is try to reduce uncertainty and make the best decisions possible. This is an oversimplification, but with software engineering your success is measured by whether or not the code works. Success is measured in 1s and 0s, true or false. It’s appealing to me to work in a profession where I can go home at the end of the day and judge my success based on what I did rather than all the possible eventualities of what might happen. I am not swearing off being a product manager in the future. But I do know that I will be an even stronger product manager if I come back to it after having worked as a software engineer first.

So, why do a coding bootcamp? Starting a company was the hardest thing I’ve ever done in my life. Although I have the ability to be a self starter and learn things on my own, I want to learn from professionals and solidify my portfolio. I want person to person instruction. I want people who will help me learn how to do things, not only fast, but right. I want formal instruction in some of the concepts I skipped over to in order to build things quickly. I want to become a professional software developer, not just someone who’s written software here and there. I’m excited to be part of the Flatiron Software Engineering program because I’m hopeful it will help me achieve those things and more. Ultimately, it will help me start my career as a software engineer.

--

--

Charles Wisoff

Recent graduate of the Flatiron Software Engineering program. Former startup CEO and product manager. Writing about tech.