First, a little background. For as long as I can remember, the only thing I knew I loved was playing piano. I decided to study music at a university, but going into school, I knew getting a job as a professional pianist would be hard and wouldn’t pay very well.
I committed to a double major in math and music, thinking music could be my job on the side. About one year ago, I changed my major to computer science and took an introductory Java course. Now, I’m just finishing up an internship at a renowned software company, writing production code, working with professional developers, and on track to graduate with a degree in computer next spring.
A lot of people, especially women, have a mentality that it’s not possible to do well in computer science unless you’ve been programming since you were 10. While that’s how some people do get started, it’s not the only way.
For anyone interested in getting into software engineering, I’d like to share what set me on the right track.
Start with Online Tutorials
To figure out if this is something you want to do, start with something simple. I started with some courses on Codecademy. It’s super-easy and might seem tedious, but it should be interesting and exciting if you’re into programming.
Talk to People in Software Engineering and Similar Fields
A great way to feed your interest in a topic is to talk to people who are passionate about it. To be honest, I felt pretty intimidated at first. I thought my friends knew so much (some of them went to a technical high school), and I didn’t think I could possibly catch up. But it was ultimately them that inspired me to change my major.
Before I even changed my major, I joined the Women in Computer Science club at my school. After my first semester, I also joined a security club which gave me experience in topics I wouldn’t otherwise learn in classes. Through this club, I got the opportunity to compete at two security competitions where I could talk with other students and recruiters.
Use Your Advisors
They’re there for a reason. My advisors were incredibly helpful, especially when I was looking for jobs. Creating a resume with no experience was hard. Most schools have a career advising center with professionals who can help you choose a major based on interests and strengths, schedule classes, review resumes and cover letters, and get job interviews.
Don’t Just Pass Your Classes
In high school, it’s easy to just cruise by and get good grades without really doing the work. In college, it’s different. I’m as guilty as anyone for doing assignments just because they’re due, but I realized that since this is going to be my job, I’d better learn the material. It paid off.
Get to Know Your Professors
Even in my first programming class, I made sure to ask my professor for a project to do outside of class. She appreciated my effort and enthusiasm and ended up sponsoring me for research the following semester.
Do Projects Outside of Class
There is no way you can learn all you need to know just by taking classes. Even if you start simple, any additional projects you do will look great on your resume–not only for the technical skill you gained, but for demonstrating your drive to do something extra.
Interview Everywhere, and Early
Your first semester is about halfway through, and you’re working on a project or two outside of class. Everything’s going great, but you haven’t even thought about next summer. Most companies begin interviewing for internships around October. My advice is to apply to every job that pertains to computer science. Of course, there are going to be jobs that you actually want and others that may not interest you as much, but just interviewing and getting that experience is crucial to your success.
Don’t Get Discouraged
After applying to about 20 companies and not getting an interview from a single one, I started to get a bit discouraged. I didn’t think I had the knowledge or experience to get an internship as a developer. I took a break and went back to step one–well, step two. I talked to people in my major who might have some insight on where to apply, and I was excited to hear about several companies, including a software consultancy in Ann Arbor (where I ended up).
I can’t guarantee that any of these steps are fool-proof, but if you’re even considering a career in computer science, hopefully this is a good place to start. Within eight months, I went from having no knowledge about computer science to getting an internship doing exactly that.