You don’t need a computer science degree or even a strong background in tech to make it as a developer. All it takes is determination and a lot of studying. Jennifer Gilbert explains how she recently made the leap from a career as a copy editor to software engineer at Aruba Networks.
What is your current company name and job title? If you’ve changed titles since you started at your company, what was your job title when you started?
I’m a software engineer for Aruba Networks. They gave me a three-month internship as a newbie and I was hired from there. When I first started out, I also worked as a contract developer building the user interface for Cook Smarts, a meal-planning app.
In my current position, I design user interfaces that allow people to interact with hardware. If you’ve ever configured your internet router, that interface is the sort of thing I would build—Aruba Networks builds internet access points and network-management software. Basically, I build web pages that allow people to interact with machines that don’t have their own external user interfaces. (An ATM has an external user interface. A remote-controlled car does not. But if that remote-controlled car were equipped to sit there on your office floor and listen to your Wi-Fi network for further instructions, I could build a web page that sends a signal to it when you press the “Drive Forward” button or whatever.)
What did you study in college? How does it relate to what you’re doing now (if at all)?
I studied journalism in order to become a news editor. My editorial skills pay off surprisingly well when it comes to writing clear code and finding bugs in software. Experience in a detail-oriented field, especially those involving languages or graphic design, can help you succeed in front-end coding.
Tell me about your career progression. How did you decide that you wanted to get involved with programming and how did you go about pursuing it?
I was a copy editor until last September, but I loved programming as a kid. That was years ago, and technology moves quickly, so I mostly had to start over when I decided it was time to give programming a try. I chose programming for three reasons: It’s a very strong job market, I’ve always regretted not exploring it further, and I had begun studying on my own and confirmed that I still really enjoyed it.
From then on, it was just a lot of studying. In fact, “a lot of studying” may be the understatement of the year. I don’t have a computer science degree, which means I needed to get myself up to speed.
I wouldn’t say I’ve loved every minute of it, because that’s not realistic. But overall, learning was surprisingly pleasant, even when I was trying to absorb a 500-page technical manual. In the past I’ve struggled to balance between feeling bored by a lack of challenge and feeling overwhelmed by too large of a challenge, and I think that learning to code can be a great fit for people like that. The next level up is just about always within reach… but there are so many levels of knowledge that getting to the top is unlikely to happen in this lifetime.
I’m lucky enough to live in the San Francisco area, which means I could also go to a lot of conferences and meetups. The community here is so supportive, and soon I had met plenty of people who were interested in working with me. Every contract I have today is a direct result of networking.
What are your favorite aspects of your job? What are the things you would change if you could?
My favorite aspect of my job is that it gives me magical powers. I come from a linguistic field, so I’m used to typing words—I’m just not used to them coming to life! I also love that I’ll never finish learning—the field is so broad and so rapidly changing that there’s always something exciting to learn.
It’s no secret what I would change if I could: The field needs more women! Technology plays such a key role in everyone’s professional future that it worries me to see women so underrepresented. The good news is that women interested in learning to code can find more support than ever before. [Editor’s note: I just learned about Skillcrush, an awesome resource for diving into coding. Its contents are sleek, simple, and definitely directed at women, though open to all. You can start out with a free email course that teaches you some of the basic terminology or sign up for a paid class and learn how to create your own online portfolio.]
What advice would you give to college students who are interested in working in your field?
Take advantage of all of the free or cheap sources of knowledge out there. In my experience, Codecademy is great, as is Code School. I’ve also heard good things about Lynda. If you already have some coding skills, focus on your portfolio. Just because you’re not ready for a paying gig doesn’t mean you can’t gain experience—that’s what open-source projects and volunteer work are for. Organizations are thrilled when they can get technical help for free, and you can do a good deed while you’re at it. I’ve seen UX design listings on Catchafire.org, but don’t be afraid to contact an organization you care about, especially when it’s obvious from their site that they could use some polish.
As your knowledge improves, get involved in forums like Stack Overflow, and post your code in public repositories like GitHub so that your progress is documented. A presence in the community is important—it can be hard for employers to know whether you’re really skilled or just claiming to be.
Transition to real-world work when you can. It’s an intimidating transition. But taking that leap into real projects with real users is so valuable—I think I learned more in my first week on the job than I had in the two months beforehand.
Maybe the best advice I can give is to do your best to be ready to take advantage of an opening if it comes up. I applied for a contract when I was just starting out. The company contacted me months later to tell me I had been rejected because my skills weren’t strong enough yet. I had gotten so much done in the meantime that I figured it wouldn’t hurt to respond to that email with an update on my recent accomplishments and a new résumé—and they changed their minds.
Luck favors the prepared. On the off chance that you do run into someone who could offer you a job or internship, make sure you can say, “Let me show you this great thing I built,” rather than “I’m sure I could build a great thing if you hire me.”
Does your company hire interns in your field? If so, how would someone go about applying?
Yes, there are internships for college students and they’re open to hiring junior developers who show a lot of talent and enthusiasm. I’d also add that plenty of companies out there could use the help. Get even a little bit of studying under your belt, and then reach out to companies that interest you.
Homework time! Go check out some of the resources Jennifer mentions. Create an account on Codecademy, Code School, or Lynda. Post a question on Stack Overflow. Get on GitHub.
P.S. If you’re based in the Bay Area, one of the organizations that Jennifer is involved with, RailsBridge, is hosting a front-end workshop in July. It’s free! You should go! If you don’t live in the Bay Area, check out the RailsBridge Chapters page—they host meetings all over the place.
[UPDATE: July 2013 has come and gone, but you can should still look into RailsBridge and see if they have any events in your area coming up.]