How I Became a Software Engineer Without Experience or College Degree
Hi everyone, I’m Valerie and in this article, I will be talking about how I became a software engineer without experience or a college degree. There are three things that I’ll mainly cover in this article:
- My background & career journey
- What you need in order to become a software engineer
- Resources I found most helpful
A bit about my background, I studied managerial economics in college and in June 2018 I decided to drop out.
Why did I drop out of college?
3 main reasons:
- My classes were mostly lectures, and taught me a lot of theory and didn’t give me hands-on close-knit learning experience that I’m best suited for
- It was hard finding a job as an econ/finance major, all the finance internships I applied to I was rejected from
- I was dismissed from college for a year since my GPA was really low, after that year, I came back to take summer classes to get back on track, but everything felt the same, I still was as clueless as ever in class and uninterested.
I realized that maybe I should try to change careers. I wanted to switch majors into computer science because it would be really cool to work in tech, but that meant I would have to stay a few more years in college with more prerequisites.
So eventually, I made a decision to drop out in June 2018 and just directly move to the city that I loved, San Francisco, and do whatever it took to make a living and be in the city. And maybe see what careers are out there that might be outside of my current awareness. One of the first steps for me was getting a job as a barista at Blue Bottle Coffee! At the time I didn’t think that was possible for me to work at this really cool company, I didn’t think a lot of things were possible for me as someone without a degree.
While working in the city I made friends with plenty of software engineers, and one of them suggested that I try out this free coding bootcamp that a friend of a friend runs. I thought, what do I have to lose? So I applied, did 2 interviews with them and got accepted into their selective program! I left Blue Bottle to try out this program, but it was kinda risky for me because I was scraping by as a barista and I had little savings. I didn’t think I had many job options as a college dropout so I was somewhat scared of losing the job that I had. The bootcamp was 4 months full-time so it was a stretch for not having a job for a while.
What was it like attending a coding bootcamp?
After dropping out, I tried to learn how to code on my own for a bit, I learned using Treehouse, Lynda, Codecademy, and any other coding resources online you can think of. But there was so much to learn, I didn’t know which direction to take. My coding bootcamp gave me a direction and I learned how to build apps for iPhone which was so cool and uncommon from most developers because there are a lot more web, full-stack developers than there are mobile. That was one thing that set me apart from other job seekers. Another thing was that we got to work on projects that the bootcamp’s clients paid for, so we built real iOS apps that were on the App Store, and we developed the app in teams so I got to experience what the work flow was like much like at a tech company. My resume stood out because I had this project I was working on that was an app for a YC company. Besides standing out, these 4 months were intense. I struggled to pick up concepts, and everyone in my cohort had some sort of coding experience already and I didn’t. Often times I felt like the idiot in the class. But, I saw it as a good thing because I told myself, what did I have to lose? If I’m an idiot in the class, that means that I’m surrounded by people smarter and more experienced than me, which means that this is the perfect place to learn! I asked a lot of questions, questions that a lot of the students already knew the answer to, and I was always the last to leave class, staying late at night with 1–2 peers left trying to pick up concepts I was lacking. I loved how small my cohort was, it was 8 students at the time, so my learning accelerated.
The coding bootcamp I went to was free at the time, but I know that you might not have this option, I would say try AppAcademy’s Online Coding Bootcamp which is free, or join a bootcamp if you can afford it, if you feel like you need more direction, guidance, or help with acing your interviews.
How I found a job after my coding bootcamp
Like any other aspiring software developer, I failed a lot. Rejected a lot. Overlooked a lot. But you just have to accept that failure a ton of times is part of the process of becoming a software engineer or to achieve any other goal you have.
It took me 2 months to land a software engineering position, I was applying and interviewing at a bunch of full-time positions, I was doing mock interviews, I was going to job fairs for senior engineers even when I wasn’t even qualified at the time. That’s how I was able to land my first software engineer internship at Poshmark! I saw their table at the job fair and expressed my interest because I knew they were a fashion focused company and I love fashion! Told them this, gave them my resume and the engineering manager there said they weren’t hiring juniors right now, but in a month they will. A month later they reached out to me! I interviewed for their full-time position, and I didn’t get it, but they offered me an internship position! Which was even better because I don’t think I was ready for a full-time role at that time :) Everything worked out. It was a good stepping stone. Smooth sailing from here right? WRONG
Ridecell, Layoffs during COVID, and Multiple offers
At the end of the Poshmark internship, I was told that I will not be getting a return full-time offer. I actually cried in front of the engineer who told me this. So it was back on the grind, back to finding a job. So for the next 4 months I was job hunting again, and I landed another internship at a YC startup called Ridecell. I found them through Angel.co which is a site that I highly recommend for those starting out because startups are always looking for help building software. At this internship I was smarter, I continued interviewing at other companies while working there because I was going to leverage an outside offer at this internship so that I would get an offer at this company.
Side note: Tech companies take you more seriously when you have multiple offers. Had I told Poshmark that I have another offer, they might have considered giving me an offer.
So I did and I got a full-time offer at a tech company based in Los Angeles, I shared this with Ridecell and asked them if they’re willing to offer me a full-time role. They took some time to get back to me, and they told me that they haven’t allocated a budget for this role yet, but will do it in a few months, for now they can give me an internship extension. I was pissed, but I didn’t want to go to LA, and I was conflicted, because here was my long-awaited full-time opportunity, but it wasn’t in the city I made a home out of. And here was Ridecell, in a city I wanted to be in, but only giving me an extension.
I decided I was going to stay in SF and decided to take the extension hoping that at the end of the internship I would be given a full-time offer.
Layoffs in every industry in every company happened. Ridecell was laying people off, and I had the intuition that I wasn’t going to be given a return offer.
In June 2020, my internship ended and I wasn’t given the offer I was told months before. I was upset, and I knew that I’m only able to focus on what I can control, I started looking for another job again.
Finding a job during the height of COVID was one of the biggest challenges I faced. Running out of money whilst living in a really expensive city was not ideal. If I didn’t make it I would have to move out of the city, which was not an option for me. So during the height of covid when there were mass layoffs and a difficult job market, I told myself I had to find a full-time software engineering role. I reached out to the engineers who were laid off by the prestigious tech companies they worked at and did mock interviews everyday with them. They were perfect peers to practice with because they were top engineers in the industry looking for their next job. This was a huge advantage for me.
Four months later with just 1 month left of financial runway, I landed not 1, not 2, but 3 full-time job offers and made it! Including the offer from PayPal which I decided on. I was finally an engineer with multiple offers. And I did it in the middle of the pandemic when there were so many layoffs!
I knew that if I could get through this, I could get through anything.
I spent a little over a year at PayPal as a full time software engineer, learning the ins and outs of developments, SDK development, working with multiple teams at a huge company. Accomplishing many things. I knew that I wanted to work at FAANG eventually. It’s the epitome of every engineers career, and I saw PayPal as my stepping stone. I started interviewing again and this time, it only took me 1 month to get offers from FAANG. I’m now working at my dream job! I decided not to include information about my experience getting into FAANG because this article is pretty long, but if you’re interested in content on how I got into FAANG, let me know in the comments.
What you need in order to become a Software Engineer
So what do you need in order to become a software engineer?
- Experience or Projects on your resume.
- being able to build apps, whether that’s web, iOS, android, backend, etc. choose one
2. Doing well in your technical interviews.
This is an oversimplification and I will be creating more content on acing your technical interviews, but here’s the jist.
2 ways to gain experience and do well in your interviews
- Enroll in a coding bootcamp
- Make sure that it’s one that will teach you the things for the kind of developer job you want, and make sure that it teaches you data structures and algorithms. I’ve heard of a bootcamp that doesn’t teach data structures and algorithms, and I don’t know how students get jobs because that’s a very important part of the interview process.
2. Create personal projects + self study
Side note: If you’re in the process of job searching and you think you applied to a bunch of positions already and you’re not having success finding a job, that either means you still haven’t applied to enough jobs, or you need better interviewing skills. I know I applied to like a hundred jobs a week for a few months when I was starting out.
I went to a lot of hackathons to be able to get stuff on my resume and meet people in the industry too. My hackathon team was top three in the competition! Putting that project on my resume was pretty awesome. Collaborate with others to learn and be able to put projects on your resume. I went to tech events to network, in SF there’s lots of tech events (at least before covid) at Airbnb, Uber, Lyft, which is so cool to attend and meet engineers. It didn’t help me find a job right away but in the long-run you develop connections/friendships with people and they might be able to connect you with someone who can help you!
Interview Resources I Found Helpful
If you are looking for peers to do mock interviews with, I suggest PRAMP, Interviewing.io because they match you with someone random to practice with. PRAMP is mainly free, Interviewing.io will give you some free mock interviews if you interview more people than you are interviewed.
If you’re like me and you did so many mock interviews on PRAMP that they ran out of questions for your account, or if you prefer not to pay for a mock interview like on Interviewing.io, use this template I created to reach out to people to practice with. Another tip for finding people to mock interview with, here’s how I did it. Go on LinkedIn, find some people who look like they are looking to job switch, and message them this:
Onramp.io for apprenticeships
Leetcode: Use Leetcode to practice with your peers. Ask a peer who is also job hunting to hop on a zoom call and spend 45 minutes interviewing them and they spend 45 minutes interviewing you.
Some people recommend doing a couple hundred Leetcode questions, I don’t think so. I don’t believe in a number of questions you do to get a job. You can look on forums and you’ll see people complaining “I did 400 Leetcode questions and I’m still rejected from FAANG” yea, because either you need to have great communication skills while solving the problem or you’re solving the problem inefficiently. I would say just practice enough Leetcode questions to be able to solve and complete them in interviews.
If you found this article helpful, make sure to like it, subscribe to my channel on Youtube @babeengineer, follow me on Instagram, message me your questions and I will try to answer them in my future content. Thank you so much. Till next time!