Discovering Insights from My First Company Hackathon Experience
Written on
Chapter 1: Introduction to Hackathons
Participating in hackathons has been a significant aspect of my journey as a computer science student. Even when I had little programming knowledge, I attended five hackathons during my freshman year. Eventually, I took on leadership roles in two hackathons at my university and volunteered at several others.
Hackathons are collaborative events where individuals gather to work on programming projects within a limited timeframe. The term "hack" refers to the act of creatively assembling a project. These events are excellent for exploring new technologies, developing innovative solutions, or simply enjoying the process of creation.
Although I have primarily focused on organizing and volunteering at hackathons recently, I finally had the opportunity to participate in my first company hackathon last week. It was an enriching experience that allowed me to explore uncharted problem areas. Even as a newcomer to my company, I made meaningful progress on a project during this week-long event, and it was incredibly enjoyable. If you're considering joining a company hackathon for the first time, let me share my experience to give you an idea of what to expect.
Getting Started
I made a last-minute decision to join the company hackathon—committing only midway through the first day of the five-day event. My hesitation stemmed from feeling unprepared and wrongly believing I wouldn't accomplish much. After only three months with my current company, I was still familiarizing myself with the codebase, lacking project ideas, and doubting my ability to execute a project within such a short timeframe.
It was a fellow recent graduate from my team who encouraged me to participate, and I’m so grateful I did. Contrary to my fears, we made substantial progress on our project and gained valuable insights.
Tip #1: If the idea of joining a hackathon feels daunting, don't hesitate to try! There's little to lose, and the experience could be rewarding.
You don’t need a technical background to take part in a hackathon. You can contribute your product knowledge, management skills, or simply learn alongside a team. If you've ever been curious about development, hackathons are among the best opportunities to dive in.
Finding Team Members
After my teammate reached out to me and a few other recent grads, we formed a diverse team. While this connection occurred on the hackathon's first day, I recommend reaching out to potential teammates beforehand if you know anyone you'd like to collaborate with. However, don't worry if you haven’t formed a team before day one; many participants wait until the week of the event to organize themselves. Working solo is also an option if that suits you better.
Our team consisted of recent graduates, but don't feel confined to collaborating with individuals who share your background. Engaging with more experienced colleagues or mentoring those who are less experienced can enhance your hackathon experience.
Tip #2: Unsure about teammates? Utilize your company's hackathon communication channels to find a team-forming event or message thread. Hackathons are a great chance to work with people you typically wouldn't collaborate with.
Choosing a Project
Fortunately for us, our organization provided a spreadsheet filled with project ideas for the hackathon. Being relatively new engineers, we selected an idea with clear criteria, allowing us to focus on implementation rather than defining the project scope.
Other project proposals from colleagues included solutions for developer pain points and features not yet on the product roadmap. The aim of company hackathons is to encourage innovation, making them a perfect opportunity to test out new ideas.
During the Hackathon
Once we settled on our project, our team convened to decide how to divide tasks. Prior to our first meeting, each of us spent time exploring the codebase, documentation, and other resources relevant to our project since none of us had prior experience in the chosen area. Our initial meeting involved sharing our findings and addressing lingering questions. We then split up the investigation of those questions and scheduled a follow-up meeting for the next day.
More experienced teams might not require as extensive an investigation phase. For us, this stage was essential to establish a foundation. If you're familiar with your problem space, hackathons aren't the time to get bogged down in every detail of the code; it's perfectly fine to jump in and work through the specifics later, as long as you grasp the overall objective.
Tip #3: Try collaborative programming! Hackathons provide an excellent platform to learn from others and share your knowledge.
Paired and mob programming have gained popularity in development teams, both during hackathons and beyond, as they allow developers to observe different working styles. You may discover that a teammate has a more efficient approach to a task you frequently tackle.
Asking for Help
During our third meeting, which fell on the fourth day of the hackathon, we encountered a roadblock. After exhausting internal tools, documentation, and online searches, we found ourselves at an impasse. We spent nearly three hours trying to resolve our issues until the end of the workday, when we decided it was time to seek assistance.
We posted our question in the organization’s team channel, and fortunately, someone was available to meet with us the following morning to help us overcome our challenges. That session provided us with valuable information that clarified many of our uncertainties about the project. Unfortunately, by then, it was already halfway through the final day, and we could only make limited progress before the event concluded.
Tip #4: Don't hesitate to ask questions early. While perseverance is valuable, hackathons are time-sensitive, so it’s not the best time to stubbornly tackle problems on your own. Some hackathons offer dedicated mentors, or you can always reach out to coworkers.
After the Hackathon
At the conclusion of a hackathon, there’s often an opportunity to showcase what you’ve accomplished. If you created a working demo, this is an excellent moment to display it. Even if you didn’t finish, sharing your learnings and the progress made can still be gratifying.
Presenting
Although we were encouraged to present even unfinished projects, my team neglected to sign up for a presentation slot due to our hectic experience during the hackathon. However, we had the chance to discuss our work with colleagues, who acknowledged our efforts in tackling a hackathon project despite not achieving a fully functional outcome.
Tip #5: Regardless of whether your project is complete, share your work! This can yield feedback, recognition for participating, and additional insights through reflection on your experience.
Planning Future Steps
At my company, hackathons occur quarterly, and we’re not required to initiate a brand-new project each time. Since my team did not finish our project, we agreed to revisit it in the next quarter, assuming it doesn’t transition into a formal feature on the roadmap.
Sometimes, hackathon projects evolve into new features or lay the groundwork for subsequent work. After all, one of the primary purposes of corporate hackathons is to inspire innovation within the company.
Tip #6: Clarify the next steps for your hackathon project. It likely needs refinement, but it's thrilling when your hard work gets integrated into the company’s offerings.
Comparing College and Corporate Hackathons
While the essence of a hackathon remains consistent between university and corporate settings, several key differences exist that can help prepare you for success.
Working on Established Projects
At college hackathons, students typically create entirely new projects from scratch. In contrast, most corporate hackathon initiatives build upon existing technologies. Corporate projects often focus on enhancing features or developing tools that streamline workflows. Given the limited time available, extending existing products and tools usually leads to a more significant impact.
I’ve found that working within an established codebase can be more challenging than starting from scratch. My hackathon team spent more than two days merely deciphering the code, often finding that identifying the right places to implement changes was just as time-consuming as writing the actual code.
Duration and Timing
Corporate hackathons generally provide more time to identify extension points. While college hackathons usually last between 24 to 48 hours due to students' class commitments, many company hackathons span an entire workweek. In my organization, we were encouraged to devote our full attention to hackathon projects, even canceling regular standup meetings for that purpose. My team primarily operated within standard work hours, which allowed us nearly 40 hours across five days (with some interruptions for other work tasks). However, if you’re particularly invested in your hackathon project, you could easily extend your hours into the night, similar to college events.
Team Composition
College hackathons often reward winning teams across various categories, which limits team sizes to about four members. In contrast, my company's hackathon imposed no restrictions on team size. While larger teams can be beneficial, it’s crucial to select a project that provides enough work for everyone involved.
Participating in my first corporate hackathon was initially intimidating, but it transformed into an enjoyable experience that strengthened my connections with colleagues, deepened my understanding of the codebase, and reminded me of my passion for problem-solving in programming. Each company may have its unique approach to hackathons, and my experience represents just one example of a virtual event, but I hope these insights are applicable to other corporate hackathons. They’re a lot of fun, and if you’re considering participating in one, I wholeheartedly encourage you to do so. I’d love to hear about your hackathon experiences as well!
Thank you for reading!
Sincerely, Lindsay
Chapter 2: Insights from Hackathon Experiences
In the video "5 Lessons I Learned from 5 Hackathons," the speaker shares valuable insights gained through participating in multiple hackathons, covering essential tips for success.
The video "Lessons From My First AI Hackathon" discusses the speaker's experiences and key takeaways from their inaugural hackathon focused on artificial intelligence.