I've just wrapped up my first year as a professional software engineer. It's been quite a ride - a little chaotic at times, but full of good as well.
As an intro, I'm a career-changer who took a very circuitous path to get to where I am today. The outline version of my story involves graduating with a double major in math and math education, spending three years exploring a variety of odd jobs, teaching middle and high school math for two years, and then working as an admin at a civil engineering firm for four more years.
I started looking into coding because a coworker's partner who worked as a software engineer encouraged me to try it out. I dabbled for a few weeks until deciding to attend an online code school called Launch School. About halfway through the program, I attended an ACT-W conference (Advancing the Careers of Technical Women) and met an engineer there who offered to meet up with me and help me find and communicate the value of my non-tech experience in the context of a particular job opening at New Relic. I applied for that position and (unsurprisingly) didn't get that first job, but it did kickstart my job search.
Before this becomes a retro on my job hunting experience (TLDR: it was unpleasant), I'll fast forward a bit. I was offered a position as an "Application Engineer Trainee" at a small company (Sitka Technology Group) that worked with folk in the natural resource management field. The position would last at most 6 months and could lead to a permanent role as a Junior Engineer on their team. It did lead to a new role, but it wasn't permanent - because I was offered a position in the Ignite program back at New Relic and couldn't pass up that opportunity.
My cohort couldn't participate in the traditional Ignite program (COVID), and instead, I was placed directly on a team. That’s where I am now, and I’m happily chugging along. So without further ado...
Learning a new language/framework/etc...
At Sitka, we used C#, .NET, MySQL, and AngularJS - none of which I'd used before. I picked it up without much trouble which was a definite confidence boost.
I've had the fortunate experience of working with really supportive folk. People have always been encouraging and willing to step in to either pair or mob our way to answers. I've never felt discouraged from asking questions or seeking out help. Special props to my current team who are some of the most affirming folk I've ever worked with.
My brain hurts regularly and I'm happy about it. Most of the time.
Rhythms of engineering work
The daily/weekly/monthly rhythms of engineering work suit me well. It's a great combo of meetings/collaborative work and solo, heads-down time.
Focus on growth is multi-faceted
Engineering isn't purely about technical ability and the teams and managers I've worked with have been all about incorporating and encouraging growth in core (aka "soft") skills along with technical expertise. I can't get enough of that stuff.
Supporting other career-changers
This transition was hard and I wouldn't have made it without the support and encouragement of a lot of people who are actively engaged in making the tech world a better place. Friends and mentors from The Collab Lab, Agile PDX, and the PDX Junior Developers Group, I'm looking at you! I've started being able to give back to these communities and that brings me so much joy.
At various times over the past year, there have been times in this pandemic-ridden land where I've felt I was on my own, just fighting to keep moving forward. I think this was inevitable, despite the efforts of the wonderfully supportive folk around me. #yaycovid
This is actually a recent development for me. For the first 9 months or so, I was just like "I'm new, I don't know anything and that's okay!" but now that I'm not so new, I get to battle with the feeling that I should already know _____ (fill in the blank). It's silly because I don't expect other people to know everything, but you know - I have to be perfect *rolls eyes*
Different companies, different roles
My work at Sitka was significantly different from my work at New Relic. I simultaneously expected this (small vs big company, a different type of product, etc...) and was surprised at how different it really could be.
I knew more than I thought I did
While building projects on my own, I always assumed there was a better way to do literally everything I was doing. Now that I've seen a lot more examples of professional code, I realize the work I'd done previously was actually perfectly fine. Room for improvement? Absolutely. But nowhere near as bad as I thought it was!
I get in my own way a lot by assuming folk don't want to hear what I have to say. I'm working towards being more vocal and contributing more to my team, my company, and the industry in general.
I've been fortunate to have folk come alongside and support me as mentors. It made (and is making) a world of difference. I want other folk to have that same benefit. So I've signed up as a mentor with The Collab Lab and am also always on the lookout for impromptu/on-the-spot mentoring opportunities in my community.
There's so much to learn and understand! I'm participating in technical book clubs, constantly asking questions, and taking on new roles and tasks where I can. So much learning happens automatically with my current role but making concerted efforts to gain contextual or tangential knowledge has also been helpful.
So here we go, on to year two! Code well, my friends!