Make sure to check out Part 1 and Part 2 of the series if you haven’t done so yet.

I am a 30-year-old developer finishing my first year as a software engineer. I didn’t get where I am by any traditional means, but I’ve learned some things along the way that might encourage someone to follow their interest in finding a place in the world of software development. Here’s my story:

A software engineer? This guy? Yeah, it’s still hard for me to believe sometimes too. If you haven’t guessed it, the interview went well and I was hired as Don’t Panic Labs’ newest, greenest engineer. It’s been a little over a year since I quit teaching to write software and I’d like to think I’ve made some leaps and bounds in my journey. So, let’s just dive into it.

My first few months were pretty chaotic. I jumped onto a project working with a new team of people I hardly knew and was immediately intimidated by everyone around me. I knew I had more to prove than I did throughout my internship; I didn’t have any excuse for clients who were expecting me to build great things for them. On top of that, I was unsure of my official roll in Don’t Panic Labs.

I recall my first planning meeting looking at screen mocks and saying I could code the interfaces to look like that, only to be corrected and reminded that I would be writing this software interface to a database. A quick wave of panic rushed up my spine when I heard this, was I really ready for this level of responsibility?

Fortunately, I had a few lucky breaks in my first months too. The software I would be using was AngularJS, the predecessor to the technology I learned throughout the summer. While it wasn’t the same thing, it was familiar enough that I didn’t feel like I was starting at ground zero. I also found that the lead dev on this project was extremely helpful and understanding of my situation. I’d like to think that I never caused him to lose sleep worrying about my abilities, but I suppose I never asked him either. Either way, I never felt afraid to admit I needed some guidance or direction, a trait I try hard to instill in younger developers that I work with (more on that later).

The biggest ease of mind in my first months was, surprisingly, my client. Most people in any profession will tell you that a lot of stress comes from the instructions coming down the chain of command. While this was certainly true throughout my tenure as a teacher, I found it to be a different experience at Don’t Panic Labs. Maybe it was my experience communicating with people in an educational setting or my inability to use a lot of technical jargon at the time, but I found this client to be very easy to communicate with and quickly iterate on feedback. I would also say that they were very understanding with my learning process and even helpful when I found myself working with legacy portions of this system.

I survived my first months, and I’d like to think I had a lot of fun in this time too. Outside of my new normal work schedule, I was able to continue learning new skills and technologies that I would be able to apply to my work. In contrast to my time teaching, I felt that I had the freedom to seek out the best solutions to the problems I would face and implement them in a way I felt in control of. Compare that to teaching and being given a dozen new procedures every year with the expectation of implementing them in your classroom seamlessly with everything else that’s out of your control. I was having more fun working than I ever have in my life, and it’s a great feeling.

I’ve had a good number of experiences that helped me harden my skills and given me a chance to bend without breaking. For example, I spent several months working offsite with a client in their office without internet access. Working with sensitive information and with an unfamiliar group of people was stressful at first, but it gave me opportunities I wouldn’t have had if I hadn’t stepped outside of my comfort zone. In the end, I had a great experience working with a wonderful group of developers and their management, and I was able to pass on some of my newly-acquired knowledge to their team. The experience made me love my job and the people I work with even more, and even gave me a sense of the bigger development community in Lincoln.

I’ve also been tasked with working on several short-term projects, some of which I only spent a few weeks working on. I’ve learned the importance of good planning and flexibility with these projects. When you only have a short time to spin up a solution and make meaningful contributions you learn a great deal about the values of architecture. Most of these projects also gave me a chance to learn a new technology, a lot of which I would do outside of the office to get more practice with it and be able to work at my own pace. These projects did a lot to boost my confidence with stepping into a new project or pushing my abilities to a place where I can keep growing.

I’m sure those of you following this mini-series noticed my hiatus since part 2. Sometimes issues pop up and time passes quickly when you’re handling several projects at a time. That’s what happened to me, but they were all great learning experiences that I know will serve me well down the road. Expecting the unexpected is a great mindset when developing, and it’s helped me develop in a way that I know future problems will be easier to predict and solve when they come up. I’ve also learned that good error logging is vital if you want to be able to support a previous project while not getting behind schedule for something you’re currently working on.

So there you have it, a teacher turned engineer with a good story to go along with it. I love coming to work every day and I can’t wait to see what the future holds for me. I hope you’ve enjoyed reading my store as much as I’ve enjoyed sharing it.

Lessons Learned

  • So you worked hard through an internship and landed a full-time gig? Great, now’s the worst possible time to slow down. You’ve got to bring your A game right out of the gate.
  • Don’t shy away from a challenge. Every struggle will pay off in the end and you’ll always come out better than before.
  • Find something you love doing, getting paid for your passion is a great way to make work enjoyable.

Looking For More?

Sign up to receive useful software development tips and news from the Don't Panic Labs team.

You have successfully subscribed!

Share This