This is something we’ve been experimenting with recently, so I thought I’d share.
A “mobathon” blends the concepts of mob programming and hackathons, providing a collaborative environment designed to tackle significant maintenance tasks or technology migrations in software development. This innovative approach allows multiple teams to work together intensively on real-world code, offering hands-on experience and producing tangible outcomes.
Why not just call it a hackathon? A hackathon is about encouraging innovation, while a mobathon is very focused on work towards a common goal with learning within a larger organization across many teams.
It is particularly useful in places with many teams that work on similar systems. For example, in one area we have 10 teams, each with frontend system ownership (10 frontend systems), and we want to try to keep knowledge, practices, and technology similar.
Practical Real-world Challenges
Unlike traditional workshops, participants engage with actual codebases, solving genuine problems that arise during technology transitions or maintenance efforts. This method enables engineers to gain valuable experience and build confidence in implementing new technologies. For instance, in a mobathon focused on migrating from webpack to Vite, engineers work in pairs on different systems, with experts available to guide and unblock obstacles, thereby facilitating learning and problem-solving in a real-world context. Vite is a very new technology, and you want the engineers that own the system to understand it when it’s rolled out, rather than some “tech team” or automation process doing it for them.
Efficiency and Effectiveness
These events can significantly accelerate the adoption of new technologies across multiple projects simultaneously in a short period of time. While the primary goal isn’t necessarily to complete all tasks during the event, mobathons often result in several projects reaching a PR-ready or near-ready state, with others progressing to a point where they can be easily integrated into upcoming sprints. This approach allows for faster implementation of improvements across the product portfolio, enhancing overall productivity and reducing lead times for new work.
Team Building, Knowledge Sharing, and Skill Development
The collaborative nature of these events promotes cross-team interaction and networking, fostering a culture of shared learning and problem-solving. This is good in large organizations where teams can sometimes become isolated in silos due to organizational structure. Additionally, mobathons provide engineers with valuable insights into the complexity of certain tasks, enabling more accurate estimation for future work. For example, after participating in a webpack to Vite migration mobathon, developers can provide more precise estimates for similar tasks in other projects, improving planning and resource allocation.
One of the key advantages of mobathons over traditional training methods is their focus on real-world scenarios. Participants encounter and overcome actual challenges that arise in production environments, rather than working with simplified, greenfield projects. This approach helps dispel skepticism about the practicality of new technologies or methodologies in existing systems, making mobathons a powerful catalyst for knowledge dissemination and skill development.
For example, instead of migrating a simple “todo” app from webpack to Vite, you’re migrating “this massive beast I work on every day”. You see all the real-world problems and have some experts there to help when you hit them.

In summary, mobathons offer a dynamic and practical approach to software development, benefiting engineers, product owners, and development managers by providing real-world experience, accelerating technology adoption, and fostering a collaborative team environment.
Hosting a Mobathon Step-by-Step
- Define mobathon goal
- Book a room for a whole day, get it setup with pairing stations, that devs can easily plugin to
- Recruit developers
- Create a Slack channel for the mobathon. It should include information about the events such as goal, time, location
- Book a restaurant or order pizza/food. We generally provide lunch for the participants
- When everyone arrives, give orientation about the mobathon topic and goal (timebox 30-45 min)
- Break participants into pairs or groups
- Use a whiteboard to track progress
- Take lots of pictures of the event, and a boomerang at the end with everyone
- Summarize results and post pictures in the Slack channel after the event is completed
Conclusion
Mobathons represent an innovative approach to collaborative software development, combining the best aspects of mob programming and hackathons. By focusing on real-world challenges and fostering a supportive environment for learning and problem-solving, mobathons can significantly accelerate technology adoption, improve cross-team collaboration, and enhance overall productivity within large organizations. As software development continues to evolve, techniques like mobathons offer a promising way to keep teams aligned, knowledgeable, and effective in tackling complex technological transitions.