When I decided that I would try out coding again in the summer after high school, I had no intention of it going further than a simple hobby. Somehow, learning Swift led to registering as an Apple Developer, leading to a published app. I fell in love with how infinite software is and how limitless the creation possibilities are. At that point, the journey had only just begun.
My first hackathon
Despite feeling completely incompetent, I decided I would go ahead and see what Hack the North was. I found a team online prior to the hackathon, but I still had no clue what I should expect at the actual event. What I got from the Hack the North was more than I could ever have asked for. I found a beautiful community of people who were so passionate about technology and so generous. Literally, I could go up to someone, ask them for help, and they would sit down with me to explain concepts. I left Hack the North sleep deprived, but more importantly, I left inspired.
After my first hackathon, I was hooked. I started attending more hackathons and more conferences to meet more of these cool people! In the past six months, I’ve been attending conferences, events, and hackathons non-stop. It’s been hectic, but I’m having the time of my life!
I sought out various groups that I could contribute to: The Hack Western organizing team (everyone should apply next year!), Women in Tech Society, etc. I encourage everyone to go out and find those organizations, clubs, hackathons, anything to immerse yourself in a community that you’re interested in. Warning: Do not take on any role that you are not interested in or are simply doing for your resume. This will result in you being miserable, which is bad. Look for things that interest you, because then even if it’s challenging, it’ll be enjoyable. Getting involved doesn’t have to mean going out and organizing this or that; I played around and made some random projects on the side. Side projects are definitely a great way to learn too.
One of the toughest but most exciting parts of the past six months has been accelerating my learning of technical skills. I’m not going to lie, it was not easy. I am not by any means a genius, and being the normal being that I am, it took a lot of effort and hard work. I started from learning very basic syntax (in Python) and then worked on coding problems every day. There are so many resources online. I started off easier (Codingbat) and eventually worked my way over to more difficult challenges (Hackerrank, Leetcode). When I wasn’t practicing on my own, I would get peers to mock interview me or use a free online mock interview service (Pramp). Of course, there were data structures and algorithms that came along every once in a while (and by that, I mean quite often) that I had no idea about. Instead of getting intimidated, I just thought, “It’s okay. I don’t know it. I’ll just learn it now.” I think that this kind of attitude paid off, as I was able to accumulate more and more technical knowledge. I’m still on that learning curve, and there’s still so much I don’t know!
Looking for an internship is hard. I didn’t let that discourage me, though. There are so many opportunities out there that I figured there had to be at least one that would take me. So with this mindset, I applied to as many jobs as possible, which ended up being over 100 applications. Of these applications, I only got about 30 or so requests for an interview. To get these interviews, I didn’t just stop at applying online. I spoke to engineers and hiring managers at hackathons, conferences, and job fairs. I even cold-emailed this one senior engineer at a really cool gaming company, and we had a two-hour long phone call about what his experience has been like and about software in general. Aside from making these great connections, a good resume is pretty important too. Here is a pretty good guide I followed when making my resume. There’s really nothing to lose when you apply for a job, just keep moving forward onto the next!
tl;dr (#tips #hacks)
- Don’t be afraid to undergo anything. Don’t say you don’t know enough or you’re not good. Just treat everything as a learning experience; go out there!
- Attend hackathons (or at least go to one and see if it’s an environment you like)
- Meet cool people. You never know how much value they could add to your life or how much you could add to theirs
- Practice, practice, practice (I know, everyone says this, but it’s true)
- Apply and interview for as much as possible. Even just the experience of doing so is valuable.
- When all is said and done, do as much as you feel capable of to avoid burning out, because that’s when you do and feel the best.
Go get ’em!
[This post originally appeared on the author’s Medium page.]
Joanna Chen is an avid coder who is always seeking a challenge. She is currently a college freshman studying software engineering full time and will be interning at Google in the summer of 2016. When she’s not hacking away, she can be found gaming, eating, or just loving life. Follow her posts on Medium: https://email@example.com.