#4: Is the grass greener in tech?

Answering from the grass, part 2.

Hello folks,

It’s me, Nick, again. Thanks for responding to yesterday’s poll. So far, it looks like the majority of respondents (75%) are saying that they honestly really like it. That warms my heart!

In today’s post, we’ll continue where we left off yesterday, replying to common concerns about getting into tech. I’ll respond to the same DM.

Here is yesterday’s post in case you want to re-read it:

#3: Is the grass greener in tech?

Nick Ang • Oct 24, 2023

Hey folks, It’s day three of 1TPD, of me sharing one thought per day with you. If we’re still internet friends and you’re still reading this, I’ll take it that what I’ve posted so far isn’t so bad. A few have dropped out and I…

Read full story →

The DM.

I’m also Introvert who doesn't always enjoy leading people so thinking or an individual contributor kinda lob. Hence thinking of getting Into tech

^ Your hunch that software engineering jobs will be suitable for introverts is accurate to a degree. You can certainly do this job with very little interaction with people outside of your direct team in the company, and many do.

Day to day, as an individual contributor (IC) engineer, you’ll find tasks from the board and chip away at them. Your interaction surfaces are limited:

  • 15-30 mins stand-up once a day, max
  • Code reviews (giving, receiving, addressing)
  • Calls with a designer/product manager once in a while
  • Recording the occasional video / giving a talk to present new features

These are certain for junior engineers. As you progress to senior engineer, though, you’ll have more interaction surfaces:

  • Discussing technical design
  • Convincing leadership and finance to buy third-party software
  • Managing project stakeholders’ expectations
  • Pushing back on timelines from mid-to-senior leadership
  • Mentoring juniors

So you have to be ready to take on more people-heavy work as you progress in this role. You don’t have to lead people in the people-manager sense, but as you progress, from what I can tell, it’s inevitable that you’ll have to lead people in the technical-manager sense. Not an Engineering Manager but a Tech Lead.

When I compare this role with others in tech, like, say, a Customer Success Manager or a Product Manager, I’d say I have it good. Real good, especially as a fellow introvert.

I’m concerned that it will become too competitive for me to squeeze in

^ Let me answer this one first before going into your specific concerns. Is software engineering too competitive a profession to get into now?

My answer to this one is, it depends. Whether you get a job or not and how quickly you’ll get one depends on location, access to a network of employers, and perceived confidence.

I’ll elaborate in a bit, but I first have to say that you should be able to get a pulse on the market yourself by doing a little research. I recommend 2 methods:

  • googling [company_name] jobs [location], for example, lazada jobs singapore and checking what jobs are listed,
  • and using LinkedIn to search across a wider net of companies, including those you may not have heard of (i.e. basically all startups). After I was laid off earlier this year from Shopify, I ultimately found my current job via LinkedIn job listings.

Okay, now let’s talk about the other factors: location, network, confidence.

Location: Singapore is a hub for tech talent. I know several people who relocate just for jobs there. I think this is a good thing for you because it means there should be ready demand.

The reason companies hire foreign talent is because the local market doens’t supply enough. I think you know this but it’s good to state it objectively: it’s a lot cheaper to hire locally than from abroad.

Access to a network: This one is easy. If you can get yourself introductions to employers, you’ll find a job more easily.

When I was trying to get my ass to San Francisco at one point, I found a friend who majored in AI at Stanford who introduced me to ~10 of his friends and I got referrals from several of them. I had 2 years of software develeopment experience at the time.

Granted, this will be more difficult to pull off as a new entrant (2 years in the industry makes a lot of difference). So just keep that one in mind.

My real recommendation for getting access to a network instantly is this: join a good course. I was going to say bootcamp instead of course but I think these days there are so many models for teaching programming that you might not need to restrict yourself.

A good course will set you up for success post-course in a direct way. Like with General Assembly (Singapore) where I learned to code, after 3 months, they organised what I’d call a reverse job fair. It was one day for all the graduates to exhibit the 4 projects they’d worked on during the bootcamp to 20-30 companies’ recruiters. It was fun, and it was how I met the co-founder of the small software consultancy I ended up working at as a junior software engineer. That was my first dev job.

Finally, perceived confidence. You’re going to need to convince yourself by the time that you’re going to the market looking for jobs that you are ready for one.

To this day, I believe I was hired by that co-founder not because I was actually great at programming (who is, right out of a bootcamp?) but because I gave him the impression that I could be one given some time to learn on the job.

During my reverse job fair, I did one thing that I think improved people’s perception of how confident I was. I displayed my projects as tabs on a browser on a monitor. That was the visual hook. Then, off to the side of the little table that was mine, I left my laptop open with the code for these projects. That was the confidence hook.

I remember it clearly: the co-founder came up to my part of the fair while I was conversing with another company’s recruiter, and he browsed my code. Later, when my conversation with the recruiter ended, he came right up to me, introduced himself briefly, and said, “You can code. It’s not the best code but it’s good enough to work with.” And a few moments later, he effectively said, “Wanna interview?”

How you get to that level of confidence is up to you. For me, I just made sure that my projects were presentable and refactored my code to be readable. In the process of refactoring and packaging things up for the big day, I became intimately familiar with the weaknesses of my projects. I could have written this as its own component. I could have extracted this logic into a reusable function and used it in this and that component, because that would have made it easier to maintain. That sort of thing.

In short, if you seem unsure of yourself, don’t expect employers to be sure that you’re the right candidate.

And to answer this:

how was the job search after our graduation? How long did vou have go without income?

^ I got a job before I graduated from the bootcamp. I lied, because my first job was as a teaching assistant at the bootcamp. I did that for 3 months (i.e. another cohort, the one after mine). In the first month of that, I interviewed at 3 or 4 companies — all of whom I got to know from the reverse job fair — and got my first dev job.

and lastly now with ChatGPT

^ I’d say, don’t scare yourself about this. I use ChatGPT at work but only once or twice a day. Many of my coworkers either don’t use it or use it sparingly. Maybe we’re just not in the know, but from my experience so far, it’s not close to replacing the jobs of software engineers.

There’s just too much context (in the code base and, more importantly, outside) and too much surgical code insertion needed for ChatGPT or even GitHub Copilot to do a great job right now. There are also practical restrictions like cost and legalities that slow adoption in many companies.

If anything, I think it’s possible that ChatGPT is a boon for new software engineers. You get to skip the “googling for Stackoverflow answers” step and go straight to having a personal, non-judgemental AI assistant to ask questions.

Subscribe to Nick's Notes

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.