How I Went From Selling Houses To Staff Engineer


Learning to code so that you can land a job in tech can feel daunting. That’s why we’re sharing inspiring stories from Codecademy’s community — to show how people like you (yes, you!) can embark on a learning journey and end up with a totally new career. We hope these stories serve as a reminder that there’s no single path to a more fulfilling work life.

Today’s story is from Shadow Smith, a 29-year-old Staff Engineer at Openly living in Westmoreland, TN. Read more stories from Codecademy learners here — and be sure to share your story here.

Why I chose to learn to code

“I fell prey to one of those get-rich-quick videos on YouTube that planted the idea of building a website to sell TVs to make residual income. But rather than using Wix or something like that, I wanted to be able to build it myself. I started with HTML and CSS. For half of my career, I didn’t even touch JavaScript at all. I got that endorphin rush whenever I first wrote a <p> tag, and then I wrote a style tag and changed the color to red. It tapped into one of my passions in life, which is creating something from nothing. It also tapped into another passion that I have, which is helping people with technology.”

How I made time to learn

“I was unemployed, so I had time.”

How I saved up enough money to switch careers

“I had some money saved up from my previous base salary from selling houses. It was at that time that I fell into this idea of creating a website to sell TVs to create residual income. And that’s when I found Codecademy. But I needed a job! I was running out of money. So I ended up trying to get a job installing security cameras for some small local company. Long story short, during the interview, they mentioned I’d need to crawl under houses. And when I said, ‘There are probably snakes under there,’ the interviewer determined this was not the job for me. But the owner of the company said something to me that I’ll never forget. She said, ‘Never lose your entrepreneurial spirit.’ And I said, ‘Don’t worry I won’t!’ and told her about my plan to create a website. And her response was, ‘Well, can you build us a website?’ And that’s where everything changed for me. That’s when the pressure was applied for me to understand what I was learning.”

How long it took me to land a job

“Seven years from when I started learning (with freelancing in between).”

How I got in the door

“I worked as a freelance marketing director and web developer making WordPress sites, and I was working for very little money back then — like $10 an hour. But I was hungry to continue my career. I became the IT person for a cattle feed company where I was responsible for building their website and doing their marketing. Then I moved on from there to a business credit company where, again, I redid the website, did the marketing, and wore all those hats. I was really just following problems I knew I could solve with code. Then the pandemic hit, and I left that job and came to Openly as a Senior Front-End Engineer. And after a year and a half, I was promoted to Staff Engineer.

As far as getting this job as a Senior Front-End Engineer, I went way beyond just submitting a resume. When I applied for Openly, I went to their website, jumped in the source code, and I saw what front-end framework they were using and what authentication provider they were using. I recreated their landing page with a login button that took you to my version of their authentication provider. When I reached out to them, I reached out to them on LinkedIn, I hit them up on Twitter, and I got to people’s inboxes and fired this thing at them. ‘You’re hiring for this role? Here’s a link where I recreated this entire part of your web application in one or two days.’ That was the thing that I think made me stand out.”

How I nailed the interview

“There were two critical elements to my interview process. The first was that I knew what my ‘why’ was. Why do I do this? Why do I care? And I communicated this at every opportunity, so they knew I was passionate. The other piece was, since I did all this up-front work and I made this whole piece of their app, that set it up so I somewhat controlled the interview process at that point. Typically, if the interviewers saw it, they’d bring up questions about it, which is way more relevant than some abstract situational interview question.

Another thing that was extremely valuable was that I’d started blogging before that point on technical concepts. So during my interview process, when they ask, ‘Do you have any questions for us?’ That’s the perfect opportunity to sell yourself. Definitely take that time to interview the company, too, but always ask: ‘With everything that we’ve discussed, what thing would prevent me from getting this job right now?’ It causes the interviewer to raise things that you may be strong at but didn’t get to cover during the interview. And then you can quickly overcome that objection. For me, that question was about testing. I told them, ‘Hey, we don’t have to dive into the weeds of that right now, but I have a 3,000-word blog on how to do test-driven development to build Vue components and document them in Storybook.'”

How I evaluated the offer

“That was a pretty quick process for me. I came from not tech-focused companies. The focus was always some other industry, and tech was just an enabler for what they were trying to do. But this company was tech-driven. Any company can say that, but for this company, technology is truly at the core. There’s also a big difference in pay and benefits, so it was 2x what I was making. I remember once I got the offer, I called my wife and we were freaking out about it. Having a remote tech-job that pays great and has great benefits was always the dream. I live in the middle of nowhere, so the only feasible tech opportunities had to be remote.”

How day one & beyond went

“It was great! I was the first front-end engineering hire at the company, so it was a lot of hands-on with our CTO. Showing me where all the skeletons are buried, what the architecture is like, and ramping us up to our first project.”

What I wish I knew before I started learning

“Focus on solving problems from the start. Tinker projects and side-hustles are a great way to learn. But one thing you should try to do is identify a problem in your life that could be solved with code. And it could be something super simple. Start small and iterate.”

Learn like Shadow

See the courses and languages that helped them most.

Not sure where to start? Check out our personality quiz! We’ll help you find the best programming language to learn based on your strengths and interests.

Want to share your Codecademy learner story? Drop us a line here. And don’t forget to join the discussions in our community.

Web Development Courses & Tutorials | Codecademy
Web Development is the practice of developing websites and web apps that live on the internet. Whether you’re interested in front-end, back-end, or going full-stack, the content in our Web Development domain will help you get there.

Related articles

7 articles

What is the Waterfall Model?

7 minutes
By Codecademy Team

T​​he waterfall model follows a linear sequential flow where each phase of development is completed and approved before the next begins. Here’s how it works.