..

Leaving Project Management to be a Software Engineer

Why I’m switching to Software Engineering?

I decided to leave my last employeer to make a lateral shift in my career,moving from project management to software engineering. It’s something that I’ve been thinking about doing for a while and I finally decided to take the jump and start by attending a Python Bootcamp in Portland, OR.

When I left the Aerospace and Defense industry I was a systems engineer, which isn’t exactly the same as the comercial worlds systems engineer. We are business analysts on steriods, testers on steriods, and highly technical project manager. I also had a long stent in a solutions engineering role as well. Moving to the “web” world there wasn’t a directy translatable postion. I found myself in a technical project manager role. While I did enjoy a majority of the responbilities that came with the position, there are a few things missing to meet my needs.

Missing the Hands on Work

I consistantly found myself rolling up my sleeves and trying to dig in. At times I’d spend more time tracing a bug while triaging, purely out of my own self interst. I’d often have to set a time limit so I didn’t spend too much time debugging when I should have been doing more project management related tasks e.g. client communications.

Lack of technical decision power

Often as a systems engineer we made a lot of high level technical decisions and I felt that I was building a solutions, yet as a “technical” project manager I never felt that I was build anything. I felt that I was merely there to make sure the client and the comapny got what they needed as best as I could.

Managing Clients

While I throughly enjoying leading teams, I don’t desire to manage clients anymore. It’s not a matter of being able to manage clients but more of a matter of finding them too draining. It doesn’t mean that I don’t ever want to work with clients again, it just means that I don’t want to be the main point of contact anymore.

Enhancing my Python Software Engineering Skills

Earlier this week I started a 12 week full stack bootcamp utilizing, Python, SQL, Django, JavaScript, CSS, and HTML at PDX Code Guild. None of these languages and markups are new to me by any form. In 2012 I started learning Python the Hardway by Zed Shaw. Over the years I’ve written a few Django apps, testing scripts, load tests, scrapers, mini crawlers, and various scripts via Python. I’ve also been recently been exploring AngularJS as well. I often worked with HTML and CSS “professionally” and obvisouly they were part of the side projects as well.

Why Software Engineering?

As far as I know there’s never really been a fully qualified definition of the position here in the United States. The most commonly accepted definitions of the role and skills involve:

  • Requirements Management
  • Software Design
  • Software Construction
  • Software Testing
  • Softare Maintence
  • Configuration Management
  • Engineering Management
  • Software Engineering Process Control

With my pre-bootcamp experience and post-bootcamp knowledge and experience I have everyone one of those areas covered plus an engineering degree to cover anything else.

What am I Hoping to Gain in the End?

My goal is pretty simple, I hope to land in a backend-ish role utilizing my Python, Django, Ansible, and Linux skills. I’m also very happy to leverage my front end skills but I wouldn’t be happy in a role of front end only.