Jeffrey Zhang

Making It Through in one of Japan's Largest In-Person Hackathons


I thought the food at my last hackathon was the most luxurious I would ever see; I was wrong. And not just food, either. Whatever I had last time, this hackathon is just simply 10x more grand (they even got butlers!).

Photo: Dinner is getting set up during Award Day
Photo: Dinner is getting set up during Award Day

Photo: Fancy Drinks at Award Day
Photo: Fancy Drinks at Award Day

Photo: Fancy Food at Award Day
Photo: Fancy Food at Award Day

Preliminary


I agreed to compete in Japan's largest hackathon without knowing I couldn't run Swift on Windows. But I'm getting ahead of myself.

How did I get here? This summer, I had the fortune of working with a tech company, Rakuten, as a software engineer intern. One night, as I was having dinner with some of my intern friends, one friend, Rio, brought up an upcoming hackathon, JPHacks, and invited us to participate.

JPHacks, in particular, is the largest in-person hackathon held nationally in Japan (at the time of this writing). There are 9 locations stretching from Fukuoka in the Southern part of Japan, all the way to Sapporo, Hokkaido, in the North. And all that is just the first round (Hack Day). The top 16 winners from all of Japan will then gather together to compete in the final round (Award Day) hosted at Tokyo University Ito Hall. Sponsored by 20+ big companies and partnered with 25+ top Japanese universities.

Of course, we all agreed to participate in unison as a team of five.

Photo: Team Photo taken during Award Day. Going from top left to top right in a U shape: Martyna, Win, June, Rio, and me
Photo: Team Photo taken during Award Day. Going from top left to top right in a U shape: Martyna, Win, June, Rio, and me

Hack Day


On Saturday, October 11th, the first round of the JPHacks hackathon officially kicks off.

Since all my teammates live in Tokyo, we decided to participate in the Tokyo venue hosted at the Tokyo University.

Photo: Everyone is developing with intense focus
Photo: Everyone is developing with intense focus

This year, the theme of the JPHacks hackathon is "Live Real. Hack the Future". Our team decided to do a Swift iOS app that uses gamification to ensure users are prepared by knowing their local disaster shelters. In other words, Pokémon Go except that it visits shelters instead of Pokémon.

Photo: What our app navigation page looks like on the first day using Apple's built-in Map, credit: Win
Photo: What our app navigation page looks like on the first day using Apple's built-in Map, credit: Win

However, I had never actually had any development experience with iOS applications, and I only have a Windows laptop. It was not till the hackathon officially kicked off that I realized I could not test Swift code in Windows.

Fortunately, one of our team members, Martyna, who was helping with the pitch presentation, also has a Mac and does not require Xcode (the software to run Swift). She kindly allowed me to switch devices so I could keep developing.

At this point, it was already 5 hours into the JPHacks hackathon. June laid out the app system design. Rio and Win were shipping new code at superhuman speed. Martyna was making eye-catching presentation slides. And I just scrambled to catch up on the Swift documentation to understand how it works.

Before I realized, our first day was up. Since I couldn't contribute much to the frontend app itself, I assisted in populating the backend database with Japan emergency shelter locations and other necessary tables, as well as setting up the connections to Gemini (text generation) and Flux Schnell (image generation) AI models. I also managed to write some Swift code to check if the backend logic can work with the frontend.

Photo: Testing the badge generation feature. Users should be able to collect custom badges when they visit new shelters.
Photo: Testing the badge generation feature. Users should be able to collect custom badges when they visit new shelters.

After getting the hang of writing Swift on my 1st day, I helped replace different sections of the frontend from mock to actual backend methods for the rest of the 2nd and final day of Hack Day.

While we focused most of our effort on developing functioning code for our iOS app, we also recognized the significance of having a well-executed pitch presentation. Since it was noted in the JPHacks judging criteria that presentation is the only factor that matters for securing sponsor awards on Hack Day, we needed something more than just a boring pitch deck to stand out. This also became significantly more difficult because each team was only given 90 seconds for their pitch presentation in Hack Day.

Our presentation genius, Win, decided to take on this task: presenting himself on stage, while two team members were outside of the presentation building, one holding a camera & microphone, and the other person demoing the app live, with both the camera view and phone screen displayed side by side.

We won a sponsor award from the company KTS at the end of the Hack Day.

Photo: Winning the KTS Sponsor Award on Hack Day
Photo: Winning the KTS Sponsor Award on Hack Day

That marks the end of the first round of the JPHacks. You can take a look at our iOS app video here.

As other JPHacks Hack Day venues come to a close, it did not take long for us to discover that the triumphant team from the Hiroshima venue, with three awards, had a very similar idea to ours on emergency shelter navigation!

This year, more than 140 teams from Japan participated, and to advance to the top 16 finalist round, we need to get to the top ~11%. So I was under the impression that we would not be able to make the cut, especially against a team with a similar idea and more awards.

It was shocking to us when we found out that we qualified for the final round on October 24th during the announcement day.

Award Day


During the 2 weeks before the Award Day, which takes place on Sunday, November 9th, we continued to add features and polish to our iOS app to the best of our abilities.

In this time period, I even found a workaround to running Swift without Mac! Since I couldn't compile Swift on a Mac, I set up a GitHub workflow to handle the compilation remotely, allowing me to install the finished app (.ipa) onto my iPhone directly.

Photo: Net contribution from our team
Photo: Net contribution from our team

During the Award Day, the top 16 winners from all of Japan will present their pitches once again in front of the crowds for 8 minutes this time. However, we will set up booths to allow judges and guests to try out our products more interactively. After the presentations and booth expo, we will have our award ceremony and finale dinner.

Similar to our presentation during the Hack Day, we decided to follow the same strategy: two team members would present on stage, while three team members would be outside to showcase the iOS app live.

While this strategy worked well in making us stand out in the first round, what amazed me was that the other equally strong teams in the final round made ours look average in comparison.

One team's product is a multiplayer soccer game. Imagine Rocket League, a massive arena with a large soccer ball and player cars. Their game replaces cars with avatars that you can control with your index and middle fingers. As the player swings their fingers in front of the game camera to mimic a walking motion, the avatar in-game runs. For their pitch presentation, after the speaker finished their slides, four team members hopped on stage, followed by fast-beat background music echoing throughout the auditorium, as they played the game live.

Photo: A photo of the team's presentation that made ArcTech
Photo: A photo of the team's presentation that made ArcTech

Another team (the overall winner of JPHacks 2025) has developed an app to help runners determine the route to run around their city block to trace out a custom drawing. What was impressive about their presentation was that they had a team member running just before the start of the presentation, tracing out the logo of JPHacks in the process, and at the end of their presentation, dashed into the auditorium, onto the stage, breaking the white tape held by two other members as a finale.

Photo: A photo of the team's presentation that made AshiArt
Photo: A photo of the team's presentation that made AshiArt

Photo: Our team's booth. From right to left: Rio, Win, June.
Photo: Our team's booth. From right to left: Rio, Win, June.

Interestingly, from JPHacks' start in 2015 to its 10-year anniversary in 2025, the number of sponsors kept growing while the finalist count stayed at 16, to the point where there are now more sponsors than teams. For this year in particular, there are 22 sponsor awards and 6 JPHacks awards, just the sheer duration of the awards being handed out was more than 2 hours long.

Our team was fortunate to receive sponsor awards from MEEQ and Softbank.

Photo: Our team called on stage for Softbank Award
Photo: Our team called on stage for Softbank Award

Photo: Group Photo of Everyone in the JPHacks Award Day
Photo: Group Photo of Everyone in the JPHacks Award Day

Conclusion


Looking back on it, the JPHacks 2025 Hackathon was a blast. I think I was very fortunate to work alongside four talented and hardworking teammates, and to get the chance to develop iOS applications for the first time. More importantly, I had the opportunity to witness some of the best hackathon projects and their presentations in person. Seeing what everyone achieved in such a short time has really helped me recalibrate my own mental metrics, setting the ceiling higher for what counts as great products once more.

You can view our github repository here, and our app website here on how to download.

Peace out.