There’s nothing quite like walking into a campus cafeteria, a large conference room, or endless halls stacked together for a weekend-long hackathon. Developers of all skill levels, with various backgrounds in countless programming languages and areas of expertise, all coming together for one purpose: to build something new. This is exactly what we talked about in Episode 3 of the Tech Stack Playbook, Are Hackathons Just for the Pros?
In a world of constant innovation, hackathons are a breath of fresh air for those who dare to create what hasn’t been created, to try something new and different, and to break out of one’s shell and push the envelope of one’s skills. Events like these are so important for developers, whether you are a beginner or an advanced software engineer, hackathons are the great equalizer and skill democratizer.
You can form a team with developers who have different skills than you, who have worked or are working at companies you might want to work at one day, or who may have expertise in the areas you hope to have. You might end up learning more from the competition in the span of 48 hours than a boot camp, course, or year of schooling. The lessons you gain, both in software development, entrepreneurship, and in working as a team will pay dividends down the road.
When you’re able to learn cyclically — try, learn, fail, learn, succeed, learn, repeat — over and over again, you expose yourself to the gamut of what technology enables: a willingness to try first and learn each step of the way.
Things to know going into a hackathon
There can be quite a lot to think about going to a hackathon…some of the questions that can be racing through your head could be…
- Who are the judges?
- Who are the partners?
- What are the time limits?
- What are the restraints/limitations/constraints/requirements?
- Where is the hackathon?
- What type of hackathon will I be participating in?
- How do I form a team?
And on and on…
There is an endless amount of questions that can be swirling through our heads, but the main questions to ask ourselves is, will I be attending a Development-Focused Hackathon or a Proof-of-Concept Hackathon. Each comes with its specific requirements, needs, and processes, which are vital to know how to crush each type of hackathon.
While this is not an inclusive list of everything you will need to know for a hackathon, it is hopefully a helpful guide on what to know going into both types of hackathons so you can crush it and make an impact!
Top 3 languages to know for a development-focused hackathon
I define product-focused hackathons as ones where you will have to build something technically unique with code that will be evaluated by various merits, from how accurate the data model is, how advanced the computation is, or how novel the use-case is. This is when you will be building a full-stack application that must accomplish a specific goal or set of goals and be presentable for the judges to review and possibly use. You will want to put on your creative developer hats and consider what could X industry benefit from ABC partners’ technology or what use-case could I implement ABC partners’ technology for? Take time in the beginning to build up an exciting, important, and relevant technology system that you can show off.
So what would be helpful to know for a hackathon like this?
#1. Git & GitHub — these skills, whether you are working with a team in real-time or working virtually, will help you and your team stay in sync across all changes to the repository and help you collaborate more efficiently, quickly, and accurately.
If you’re working with a global team at a virtual hackathon, how will you be able to keep up with code changes throughout the event, especially if you and your team are in different parts of the world and in different time zones? GitHub will be your best friend, linking your teammates together as if you were in the same room. You don’t need to be a git expert, but knowing how to do pull requests, branch your code, and code reviews, will be crucial.
#2. A front-end framework like React, Angular, Vue — knowing how to build a fully-packaged application where everything is packaged and compiled for you is key. React, for example, is amazing for this because you’re able to run code from a startup script, build a package and deploy that on the cloud, like AWS, and there are so many benefits from knowing React.
Knowing this front-end framework because now you can operationalize your code, you don’t have to have different repositories and codebases connected together in pieces. React will let you put all of your code together and bundle it up seamlessly, which is pretty incredible as an advancement of progressive web applications and making software for the web.
There is also an immense amount of documentation around front-end frameworks like React, as well as YouTube videos, Medium blog posts, and StackOverflow forum posts about React as well. You will never run out of resources to pull from, and having a very well-documented front-end framework like React that most developers will be knowledgeable about will help to make the hackathon experience as seamless across your team as possible. There are also so many great resources, like TeamTreehouse, that provide quick and efficient trainings to help you jump start your React/front-end development skills in no time.
#3. A back-end language like AWS (cloud services), Node.JS or TypeScript (local server), Python (algorithmic code) — will allow you to work with data, endpoints, and build the logic backbone of your software application.
Perhaps you want to be able to predict data in the future or visualize some sort of information as it comes in. Your back-end language or back-end services will be vital for helping support the front-end build of the site.
SUBSCRIBE to the HackerEarth blog and enrich your monthly reading with our free e-newsletter – Fresh, insightful and awesome articles straight into your inbox from around the tech recruiting world!
Top 3 tools to know for a proof-of-concept hackathon
This type of hackathon is a bit different than a development-focused one because here, the goal is to mission and vision your way to success.
#1. A design tool like Figma, Sketch, or Adobe XD — knowing how to wireframe and build out the UI/UX (user interface/experience) of the user journey throughout the software is a powerful skill. Even more powerful is being able to build out a wireframe in a hackathon with a limited amount of time and resources to build.
By creating mockups, this is critical for sharing this with the judges who want to see what you have visioned and where you want to go. Mockups help to make the software real and sell your vision to an external audience. Design skill sets are so helpful in places like this.
#2. Knowing a presentation software like Google Slides, PowerPoint, or Keynote — having pretty savvy presentation skills will help to sell your mission and vision even more. Google Slides is often the default for sharing presentations, especially with judges.
#3. A front-end framework like React, Angular, Vue — at least being able to build out a front-end mockup will help to impress them with your vision of what you have built so far and where you can scale this idea. Judges are also making judgments about your ability to carry this forward, so you’ll want to make sure you can show some development skills, even if it isn’t required, because it will add credibility to your vision, beyond stand-out designs and visuals.
All it takes is one, or two, solid steps forward…
Everything is achievable with the right plan. It just takes the right steps and some courage to push past the imposter syndrome, the self-doubt you might be feeling, or the uneasiness of “not being good enough just yet.”
Sometimes being thrown into the thick of it is how we end up learning the most, and this is what makes technology and programming so special — everyone is still trying to figure out the answer too. If everyone had all of the answers, software engineering wouldn’t be a career because everything would be built already.
What if you could be the key to unlocking the solution to a big industry-wide problem? What if you could be the needed ingredients to a team that wants to help the world with a specific use case?
The only way to find out what’s out there is to sign up for a hackathon and get started testing the limits of your personal innovation engine. The future is there for those who dare to believe, dream, and build. I hope you take those first steps and go on to build transformative tech for your communities and the world!
Let’s digitize the future!
Check out the full list of upcoming hackathons at HackerEarth here!
This post has been contributed by Brian Hough, Chief Technology Officer and Co-Founder of Airblock Technologies, AWS Community Builder, Host of Tech Stack Playbook, and five-time Global Hackathon Winner.
As someone who’s very active on the hackathon scene, Brian knows a thing or two about the arsenal of tools and tricks developers need in order to win one. Hope you find his tips handy!
Here's what you can do next
Check out FaceCode:
an intelligent coding interview tool