Hackathons – they’re awesome — or so I hear. I’ve actually never been to one.
Hackathons and lovers of the remote lifestyle don’t mix all that well.
That said, hackathons do have many positive aspects. For example, you can do some networking, build stuff with data/hardware that you don’t have access to/can’t afford, and in some cases companies will even recruit at these events.
For CS students applying for internships or their first job out of college, hackathons can be very helpful. They give you something to talk about during interviews and if you happened to have placed or outright won at one of these events, companies may even try to recruit you.
However, there are definitely people, such as myself, whose personalities and mannerisms aren’t a good fit for hackathons. For example, if you can’t sleep in places that aren’t your bed, get uncomfortable in certain social situations, don’t work well with distractions, or just don’t like the idea of having to deal with a stressful all-nighter, hackathons may not be for you.
And to those like-minded individuals, I would say “Don’t force yourself to attend a hackathon.” I’ve never attended a hackathon and I am very content with that decision.
However, if you don’t attend hackathons, you could potentially be at a disadvantage when applying for jobs.
Any potential job seeker needs to think about the following:
How am I going to appeal to employers?
What will I put on my resume?
What am I going to talk about in an interview?
Hackathons are nice because they require a very low time investment for something that can potentially really pay off.
However, if you are an anti-hackathoner such as myself, there is no need to fret — you do have options.
Just know that you’re going to need to be a grinder.
1. Self Learning:
You probably are going to want to spend a good amount of time learning new technologies. Since you are trying to get your foot in the door and get your resume noticed, it’s probably a good idea to perhaps learn a popular frontend or backend framework. Though just learning whatever frameworks/technologies that genuinely interest you is fine as well.
2. Personal Projects:
Learning in and of itself is fine, but it would look really awesome if you had some projects to put on your your resume and perhaps even demo during an interview. Building something interesting and useful that you care about, rather than just something generic would be great. Still, any projects you have would be better than nothing at all.
3. Take Useful Electives:
Taking something like graph theory is fine, and if that’s what you’re interested in, that’s great. Just know that it may not get you noticed. If you want to stand out, taking something like machine learning, ai, or computer vision, which are highly desired skillsets in today’s marketplace, are great choices. And of course, if your school offers courses in subjects like web development, database design, app development, or similar practical courses, those are also fantastic.
4. Contribute to an open source project:
Maybe there’s a piece of open source software that you really like and you want to contribute to the project. For someone with little experience it may seem daunting to contribute to a existing piece of software, but just give it a shot. Even if it’s just removing a semi-colon, adding some comments, or making a fix to the documentation, any contributions will look good. Take a look through feature requests and reported issues. If you see anything that catches your eye, give it a shot. Even something as simple as documenting issues is fine. The point is to just start contributing.
Those are just a few ways that you can get some experience without attending hackathons. So if you aren’t the hackathon type of person, don’t worry. There are plenty of non-hackathon methods for gaining experience and building up your skills to impress future employers.
If anyone else has any good tips for young devs or has something to say about what I’ve written here, please leave a comment.