How I Got My First Software Engineering Job With No Experience

Karina Pichardo
7 min readSep 26, 2023

--

Oh hey, it’s me!

I think the best part about becoming an engineer without having the degree or any external help is really the understanding and confidence that I’m able to reinvent myself at any time. I could do this a million times if I wanted.

Here’s exactly what I did to get my first job as a software engineer:

(If you do this, I don’t see why you couldn’t get a job as one too)

1. Crystal clear vision

First things first, you want to get clear on *why* you want to be an engineer and *what* your end goal is, the clearer you are, the better it is for you.

Here’s why this is so important:

Things are going to get really difficult and if you don’t know why you’re doing this, you’re not going to make it.

Why would any sane person put up with hard times if they don’t have a “why”? Any person in their right state of mind would give up. So before you even embark on this journey make sure you know what it is that you want and why you want it.

Here were some of my “why’s” and “what” as an example:

  • I wanted to be able to go into an office a couple times a week
  • I wanted the office to be walking distance from my apartment (big nyc girl)
  • I had a salary number in mind of how much I wanted to make
  • I wanted to work with really smart people and be in an environment where learning and growing were prioritized
  • I never wanted a 9–5 job (like ever) but I knew that if I had to have one it would need to be a career where I’d be constantly learning, being a software engineer = dream job

You definitely want to be open minded throughout this process but having an idea of what you’re aiming for is incredibly valuable.

2. Connecting with people who are on a similar journey or people that were already software engineers

You’d think this would be common sense but it’s not. Surround yourself and inundate yourself with the things and people that you hope to be or have one day.

Here are some ways in which I did this:

Why is this important?

  • First of all, there’s a legit community of people out there that are either heavily obsessed with programming / tech or are doing exactly what you are trying to do…HUGE
  • Secondly, hearing people talk about what they are going through and seeing those same people get jobs in the end is going to be very beneficial for you, it’s going to keep you motivated and pushing
  • You learn by interacting with these people

The main and most important thing that I learned from going to meet ups was just pure confirmation that I belonged in this field, I fit in. I would show up to these meet ups and be around software engineers, product managers, scrum masters, and be like “hmmm, I actually fit in with these people, if these were my coworkers, this would be great”.

The confidence that you get from these experiences is priceless.

3. Putting myself out there

When I google your name, I should see a ton of things come up related to programming or projects that you’re working on. People like people that are into what they’re doing, and I’m not saying you have to be obsessed with programming (although it’d be nice if you were) you should pretend like you are, it’ll help if the goal is to get hired.

When I see someone that is super into what they’re doing and is passionate about it, I’m going to naturally gravitate towards that person. It’s just how it is, I don’t make the rules.

Here’s what I did to ensure that I embodied this:

  • I wrote articles on Medium and DEV community about the things I was learning
  • I used twitter to tweet out how passionate I was about programming or random thoughts (which were all very much legit feelings) but the tweets help other people relate and see how serious / consumed I was with programming
  • I updated my LinkedIn and GitHub to reflect the journey I was on
  • I created a SEO engine for me that worked, when I googled my name, everything I saw was related to programming…everything, this was intentional.
example of tweets I’d put out

People are going to google your name if you apply for a job etc, so make sure that what they see is correlated to programming. It also just brings in opportunities, for example, I was asked to write for a publication and the head of engineering at my company literally told me that he read some of my articles, that’s pretty neat.. this works.

4. Commit to GitHub every single day

This might seem like overkill but no, if you’re learning to program, there shouldn’t be a single day that goes by that you don’t commit to coding or learning something, this is the level of dedication that you need to make this happen.

If you think coding for 10 minutes every other day is going to propel you forward? You’re in for a sweet surprise and I wouldn’t even bother, it’s not going to get you anywhere.

Apart from the obvious that you should be coding everyday to help move you forward…

If you’re committing code everyday, what does that tell people? That you’re incredibly focused and disciplined and that you’re serious about this.

Some people will argue and say that your GitHub commits don’t matter but when you’re new to this world and have no experience, it does.

5. Work

You’re probably reading this and thinking well, duh!

But no.. hear me out, I was putting in 8 hours a day Monday — Friday, 4 hours Saturday and Sunday, sometimes more, sometimes less but the point is, I was fully committed to this journey.

My life was strictly programming, I ate and thought about programming, I slept and thought about programming, I went out with friends and would be thinking about programming. I was absolutely obsessed and focused on making this happen, anything that was outside of me becoming a software engineer? I didn’t have time for.

I remember going to a cafe (which I did a lot) and texting my friend 9 hours later and him being shocked saying “Jesus, you’ve literally been there all day!” and this was constant, this was my “normal”.

If you’ve got a family or other responsibilities, you’ll need to rearrange your life so that you have big chunks of blocks to work on programming.

I’m not saying you need to follow my strict schedule but I am saying this is the level of focus you’ll need if you want to become an engineer or do anything that’s going to have a complete 360 effect on your life.

Some of the things I was doing with this time:

  • Building projects, I was replicating sites I saw online and adding my own spin to them, you really just want to be building projects cause this is the only way you’ll learn. Figure out what you can build right now and google how to do it, watch YouTube videos, etc.

6. Apply to jobs

Once I felt “ready”, which full disclosure, you never really feel ready but I do think you get to a certain point where you feel as if you could contribute to a project.

Once I was confident enough to get in-front of someone and say “I can be of service, I can provide value, hire me”, I started applying to jobs.

This is almost just as hard as learning to code because you face SO much rejection.

I would send out cold emails everyday and get zero responses. I applied to over 25 jobs and did not get a single response. I almost gave up but I said, let me just keep going for a little longer and if I continue to see no progress then I’ll reconsider if this is for me. And then of course, I had a couple interviews and ultimately got an offer that I accepted.

It’s important throughout this process to remember that you only need 1 “yes” and also remember to go back to your “why” during this time, it’s going to help immensely.

Some recommendations when applying for jobs:

  • Get creative with your resume if you’ve got no prior experience, don’t list out jobs that don’t relate to tech, they don’t matter
  • Instead list out projects that you’ve worked on and the technologies you used with links to a working demo, any articles you’ve written, etc.
  • Include your portfolio (this is your baby)

Ultimately, it comes down to how much work you’re willing to put into this and how disciplined you can be throughout this process. Of course there’s some “luck” that comes into play but I truly believe that “luck is what happens when preparation meets opportunity”.

If you don’t prepare and put in the work, even if those lucky moments do appear, you’re not going to be able to take advantage of them because you can’t handle it, you didn’t put in the work.

Perfect example of this happening to me, I met an amazing guy that worked helping startups build out their teams and was heavily involved in the tech space and he reached out to me many times with opportunities for me to talk to companies and I had to say no every time because I wasn’t prepared. As difficult as it was to say no, it’s having this self-awareness that really helped me move forward.

If you prepare and put in the work, I promise this can happen for you too, you’ll get “lucky”.

I hope this inspires you because I’m just a regular girl that happens to be super disciplined and interested in technology. If I can do this, so can you.

--

--

Karina Pichardo

Fascinated by technology! Curious about the world. I love learning, researching, reading, and coding.