Find the right nanodegree program for you.

Start Learning

becoming a software engineer

Less than 5 years ago, I was working on Afghanistan programs at the U.S. State Department, where the most advanced tech we used was Microsoft Excel. I had zero programming experience. Today, I’m a software engineer at one of the most successful education startups in Silicon Valley.

People often reach out to me through Twitter or Medium to learn how the heck I managed to do this, and I’m quite happy to talk with aspiring engineers who want advice.

At times, I feel like people expect me to have a magic formula, or a secret trick that somehow will unlock their life goals. Inevitably, these people are disappointed to learn that I am, in fact, useless to them. Nothing about me is exceptional. I have no magical insights to bestow. I’m like the person who tells you the secret to losing weight is diet and exercise. That person is the worst.

The truth is, if you want to follow my example, I can’t give you a master plan because I never had one. I can only give you tips that worked for me and might help inform your own path.

Before I continue, one very important thing to know about me is, I value the journey towards mastery far more than the rewards of mastery, itself, which I generally find uninteresting. And nothing—nothing—thrills me more than doing what others say I cannot do. If you share this sentiment, you’re going to enjoy this backbreaking pursuit way, way more than a normal, well-adjusted person.

With that, here are my Top 5 non-magical tips to becoming a software engineer.

Non-Magical Tip No. 1: Get a job at a company you love, and make yourself indispensable

Four years ago, I took a 30 percent pay cut from an already modest government salary to join Udacity as a project manager. I had no idea if we’d still exist in a year, I just knew that I wanted to be here and could prove my value on the job.

My goal for every job I’ve ever had is to perform my duties extremely well, and then do anything else that needs to be done without complaining or asking for a cookie in return. Everything from answering student support emails to unclogging the toilet—if it needed to be done, I did it cheerfully. In 6 months, I earned a raise and promotion.

By the end of my second year, I’d led a number of successful product launches and felt the familiar urge to challenge myself with something new, preferably something that I totally sucked at doing. I’d never lost my interest in programming and had learned the basics by taking almost every web development and JavaScript course available online (here are some of my favorites).

I was ready to go all-in. At the time, Udacity had not launched Nanodegree programs, so I decided to take a 3-month sabbatical to learn full-stack JavaScript development at an in-person bootcamp.

Not only did Udacity support my decision completely, they sponsored me through the program, no strings attached. This wasn’t out of charity. Everyone, all the way up the CEO, really wanted me to come back happy and fulfilled, and ready to contribute using the new skills I had gained.

It turns out, if you spend your days becoming the kind of employee that companies hate to lose, good things will happen to you. In fact, the entry point to your dream job might just be at your current company.

I didn’t realize it at the time, but in my first 2 years at Udacity, I was laying the groundwork to land an incredible job as a software engineer. Pretty good for a history major with no tech experience!

Non-Magical Tip No. 2: Believe in yourself so much it scares people

How hard can it be? — Me, about everything, ever

Whenever I consider embarking on something new, whether it’s a career change, a yoga pose, or a potentially disastrous home improvement project, I ask myself for evidence of my future success. Have I ever done something like this before? Often, the answer is, “Big fat nope!”

Then I ask, “Has another human done it?” And if a Google search reveals this to be so, I ask a follow-up: “Well, how hard can it be, really?” Then I search for an instructional video on YouTube. Literally, that’s my criteria. If another human being on earth has done it, I believe I can do it, too.

This is obviously delusional. But you need to be a little delusional to beat down the doubt that will creep up throughout your journey. Self-doubt is pernicious. It is corrosive. And it must be destroyed, repeatedly, like weeds or mosquitos or sweater lint.

Non-Magical Tip No. 3: Surround yourself with people who believe in you

Early in the bootcamp program, one of the founders sat down with me and expressed legitimate concern with my progress. He did this in the kindest, most constructive way possible, but the message was clear: You may not have what it takes to succeed here.

I thanked him, genuinely, for his feedback, and told him that, to me, failure was not giving my full effort, so I was going to keep trying and work harder! And with my “can-do” spirit, surely I would prevail! Then I walked to the BART and cried the whole way home. Fortunately, weeping openly on the BART is not an uncommon occurrence, and people mostly looked the other way and left me alone.

For once, my self-confidence, which typically ranks somewhere between Gwyneth Paltrow and Ross Perot in level of conviction, was punctured, and I seriously considered giving up. Two things kept me going.

First, I was one of three women in a cohort of 40 students. I could not fail. Sheryl Sandberg, my imaginary friend, would be devastated. (Note: Sheryl Sandberg is real; it’s just our friendship that’s imaginary.)

Second, I have a wonderful support network of family and non-imaginary friends. They reminded me that, however experienced and well-intentioned the bootcamp founder was, he didn’t know me as a person, and thus had no way of knowing how scary I am. (Which is true! I am super scary!) You’ll need supporters like this in your corner.

Conversely, if you have people in your life who do not believe in you, you need to Kondo them immediately. These people are not “sparking joy in your heart,” and, like a scratchy, unflattering sweater, you don’t need them taking up valuable time and space in your life.

Non-Magical Tip No. 4: Struggle, visibly

As a learner, the worst disservice you can do is pretend to understand something when you don’t. At first, I was embarrassed to need so much help during class. Was it obvious to the others that I was behind? Could they all see that I didn’t belong?

I worried about this for about a week before I stopped caring. Instead, I thought about the huge upside of being transparent about my weaknesses: I got personalized attention and help, and actually learned. Nothing else mattered.

If you’re surrounded by people who are better than you at something, you are the luckiest person in the room. Don’t hide—take advantage.

Non-Magical Tip No. 5: Be prepared to work harder than you ever thought possible

You’ve reached the diet and exercise section of this article. Tim Ferris, I am not. My book is going to be called “The 104-Hour Workweek,” and it will sell exactly two copies.

This is not a joke. Well, I didn’t actually write that book, but I did work 104 hours a week for 13 consecutive weeks. And after I joined the engineering team at Udacity, I worked 80-hour weeks for the first 6 months, just to keep up.

All told, I’ve spent well over 4,000 hours to get where I am today. And I’m nowhere near done with my journey. Everyday, I face new challenges. Everyday, I learn something new, and feel myself inching towards competence at a painfully slow crawl.

There’s nothing magical about it. And I couldn’t be happier.

Jennie Kim Eldon
Jennie Kim Eldon
Jennie Kim Eldon is the Product Lead for Android Nanodegree Programs at Udacity, a role that combines her experience as a software engineer and project manager, with a product focus. She loves learning, writing and dogs.