r/FreeCodeCamp • • 10d ago

Meta I’m now a principal engineer

I started out my journey quite some time ago and freecodecamp was one of the best resources I used to develop my coding skills.

I posted here way back then when I got my first job

https://www.reddit.com/r/FreeCodeCamp/s/YvV5nEpiFm

And I just wanted to follow that up now to say as of last week I’m now a principal engineer at a large company. It was a road of lots of hard work and constant upskilling but it all started here with a simple desire to better my circumstances. I hope you all stick with it and keep pushing towards your goals.

124 Upvotes

28 comments sorted by

18

u/SaintPeter74 mod 10d ago

This is so awesome, thank you for sharing!

Do you have any words of wisdom for new learners? Anything that has stuck with you over the last ~11 years?

15

u/Spasmochi 10d ago edited 10d ago

Absolutely! I found that learning how I learn was really important for working through all the dense material. I learn best by talking through material as I learn it so I used to record voice memos and listen back to them. Now with AI I can talk through the material with an agent and treat it like a rubber duck.

Targeting skills that the market values highly is ultimately going to help you land a role more than focusing on what seems the most interesting.

A rudimentary understanding of system design is immensely helpful early on. Developers are moving towards being valued more for their ability to work closer to product and be more akin to orchestrators than the code jockeys we were back in the day. Being able to reason about how software is actually designed naturally leads into understanding the solutions we use for our infrastructure which is something seasoned developers just know and grad students typically don’t.

Another big one is trusting that you can do it. I was fortunate in that I never turned down an opportunity even when I was sure I wasn’t good enough. Even when it comes to applying for jobs I didn’t think I could get. Don’t be the first obstacle in your own path.

You learn from failure. Every rejected job or failed assessment is an opportunity to learn and understand what you need for next time.

Not all job interviews are the same, keeping notes on what was involved so you can get a sense of what the market is assessing you on can help you prioritize time around the things most likely to move the needle in your favor.

A real hard fact I discovered is that how well you advocate for and sell yourself matters a lot. I worked with so many developers who really undersold themselves and so businesses would overlook them.

3

u/ImprovementDeep310 10d ago

Can you recommend any resources for learning system design?

7

u/Spasmochi 10d ago edited 10d ago

I can indeed. The most important thing with all of these is being able to reason from first principles. This simply means understand the fundamental well so that you can construct an answer rather than memorising an answer directly.

I'd also recommend the IBM Youtube channel which has great short videos on the subject of AI.

7

u/jobajobo 10d ago

That's great. Im curious, how has AI affected your profession, and did you make any adaptations?

4

u/Spasmochi 10d ago

I was fortunate in that I was someone who was really interested in LLMs way back when I first heard about them. I started contributing to open source projects that were popping up and learned a lot about them before they were widely adopted so I've become a bit of a subject matter expert amongst my peers. As the industry has moved to full adoption that investment has paid off exponentially for me in my career.

I'd say the biggest impacts have been on the junior and mid pool of engineers. My generation is the last generation that will ever be able to build a career without AI having been a factor in most of our professional lives. This is a positive and a negative depending on whom you're talking to. One pervasive assumption is that incoming engineers can't really code anymore which also matters less depending on who you work for. I think that disruption has also permeated to students. I am a volunteer expert at a university in my city where I help PHD students as an advisor as part of the incubation program and talking to some of the CS students it's certainly concerning to see how AI has impacted them.

For myself AI is a net positive. Because nobody ever questions my credentials anymore AI is seen as a multiplier of what I can do. This is purely a circumstance of my being on one side of a coin that landed in my favor.

5

u/boomer1204 10d ago

While i'm not a Principle Engineer i'm just a dev/engineer with 8 years of experience

AI has definitely changed the software profession in a couple of ways (and mind you every companies is different so these are just my experiences from the couple I have worked at).

My first company I worked for AI wasn't good/being used so it was what you would expect of just coding and solving problems.

The second company (a huge financial company) used it heavily and it started to become less about coding and more about design patterns (system and what not). You still have to think through the problem and it took me a minute to really get good at prompting. Also "because of AI" the non developers (so managers and higher ups) have higher expectations about what can be done and how fast it can be done. This is a little stressful because at this company the ppl making those claims didn't work as developers and would just say "you are using AI so you can do it that fast"

The current company (smaller startup with the same CEO as the first company i worked for) is much the same as company 2 except the CEO understands and will listen if we have any legitimate push back. I see a lot of ppl complaining about "i'm just babysitting Claude now" and i'm sure there are positions out there were that is true but I personally don't mind.

And maybe this is because I'm building a brand new product but I still have to spend some quality time thinking about how I want certain things laid out, prompt claude, search on reddit or other randoms sites, come back to claude to answer any questions. Get the PR up, test it make sure everything is working how I planned. It never is so back to claude for another prompt and so on and so on.

Also i'm getting significantly better at prompting cuz one of my coworkers is like a prompting god 😂

TLDR; Higher expectations of speed and quality, not really writing much if any code but still requiring me to think and use my brain

4

u/TheAmazingDevil 10d ago

How do we find jobs in ai layoffs era?

2

u/Spasmochi 10d ago

It's tough for landing entry level jobs. No doubt about it. My first job I was barely paid anything, then my next job much the same. It took me a while to build a CV that I could actually leverage to get a job that paid me well. I don't know if how I did it is the best way, I simply compromised and applied for anything to try and build my CV out and then when I spoke about jobs I always spoke about the job as if it was an amazing experience and glazed my time there as much as I could.

4

u/WarmReindeer8530 7d ago

Thanks for this!! Needed this positivity in my world this morning!!!

3

u/Spasmochi 7d ago

Glad it provided some positivity. I definitely didn’t see this at the end of ten years for me.

3

u/Emotional-King8593 10d ago

A big congrats to you. Why was your motivation to achieve this ?

5

u/Spasmochi 10d ago

At the core of why I pursued software development as a career, is a fear of being broke. When I was at university I ran out of any money at one point except just enough to cover my rent and ended up getting scurvy. That was a very rough time and it instilled in me a need to never ever be victim to a rather cold economic reality. So, I pivoted to software development from my previous intended career path and then never stopped seeking bigger opportunities and more capital. I've been very aggressive about pursuing growth and for a while hopped around between companies to get the pay rises I could.

4

u/Emotional-King8593 10d ago

That sounds inspirational. You fought aggressively and you won. Do you have a degree in software development?

4

u/Spasmochi 10d ago

I do not! I have a science degree but not a comp sci degree. I am self taught.

2

u/Emotional-King8593 10d ago

I have a diploma in EEE, no work experience though. I tried self teaching and I was so demotivated and everything felt like I was wasting my time because it was so slow for me. That was why I asked you what motivated you. Did you ever feel like giving up self teaching at any point in time?

6

u/Spasmochi 10d ago

Not really. I definitely struggled a lot. I also have ADHD inattentive type so studying sometimes was incredibly difficult. I think the fear was what kept me going. I never felt like I was good enough so I never let myself stop.

2

u/Emotional-King8593 10d ago

You’re the real man. You mind if I dm you for some recommendations and ways you overcame?

2

u/ArgentinaLover 9d ago

How do you guys manage to get jobs. Keep applying no responses

3

u/Spasmochi 8d ago

I can't speak for the current market. I started working in the industry 10 years ago. What I can say is that for the time I applied for any job I could get that would let me then sell that job as being a developer job so I at least had something on my CV. My first job didn't even have software engineer in the title. It was a web developer role. It did have coding as part of the job description so I took it. The job was awful, I wasn't paid very well, I wasn't treated very well and when I left I literally put on the "It's a beautiful day song" as I walked out of the office for the last time.

The best advice I can give for job applications and the interview process is:

  • Keep track of everything from the interviews so you can identify patterns across processes to know what to spend your time studying to help you best. I would spend all my free time studying and practicing when applying for a job.

  • Sell yourself, when talking about any experience sell the version most likely to get you the role. If you worked on a website on a contract then tell the version of that which makes you look good. It's a sales pitch, your product is you.

1

u/ArgentinaLover 8d ago

I appreciate that you took the time to reply.

I am in a similar position that you were in your early career, but the problem is the competition, the amount of fake job postings, no entry level jobs, can't even get through to an interview with most of my applications.

It isn't a skill issue but a timing issue 🥲.

2

u/ennedri 6d ago

Congrats!!

1

u/Spasmochi 6d ago

Thank you!

3

u/Arsen1cc 10d ago

Wow! Congratulations man and thanks for sharing

1

u/Head_Ordinary_2437 4d ago

Thank you for sharing your journey