Lessons Learned From Swat.io

Transitioning from an agency to a product company

A. Sharif
7 min readFeb 2, 2016

How does an agency transition into a Saas business?

Viennese company Die Socialisten, which is behind well known applications like Swat.io and Walls.io, is a great example. The following post is a short summary of talks I had with Michael Kamleitner (CEO) and Johannes Nagl (CTO).

Introduction

Michael started the company in 2008 after working as a freelance developer, creating a large number of applications and building a large network along the way.

Die Socialisten were initially a classic agency, specializing in Facebook Apps — building applications for their clients (including large and well known companies in Germany and Austria). Facebook Apps were the thing a couple of years ago. Michael quickly gained a reputation as an expert on the topic and even wrote a book dedicated to Facebook application development. This and the fact that the Die Socialisten were the first and only approved Facebook marketing partner in Austria helped to push the brand.

Up until 2010 Michael and his business partner and co-founder Andreas Klinger (who now works at Product Hunt) both took care of business and programming collectively. This changed when they had their first hiring. An important step for the then young company. The first employee marked a change in the way they handled their development process. Up to this point, things were quite chaotic. Think in terms of no source control, code duplication and everything that comes with deadline driven development.

This first developer to join the company forced a change in the way they needed to work. The lack of documentation made it hard for new people joining the team to understand what was going on code wise and the copy and pasting wouldn’t cut it either — at some point. This was especially painful when maintenance work had to be done on an existing app.

Things began to really change when Johannes Nagl joined the agency in 2011. Johannes had ran an agency himself but decided to join Die Socialisten and started to introduce his learnings from the previous role as a co-founder and technical lead. “Johannes was the perfect fit, although he needed to grow into his current role.” (Michael)

Johannes introduced source control, enabling to modularize their codebase, and they built their own framework, to prevent having to copy and paste functionality, making it easier to maintain the codebase for multiple projects.

In addition to the framework, they also started to introduce testing as an integral part of their workflow. Using simple tools like google docs and having the customer review and test the application enabled quick feedback cycles. Documenting projects and code began to be the norm. Especially the fact that they included the client into the review process has been a very positive experience for the Die Socialisten team, no complaining about having to test again — as the customer feedback was always positive. This simple step helped to improve the quality enormously.

Based on these experiences and changes, Michael decided to launch Swat.io, a social media management application for teams.

Michael’s approach was always “Quality over Quantity” with a „200% Quality“ focus which also helped to build up Swat.io as a product. Delivering quality products to their customers was already part of the Die Socialisten mindset from day one, even when the underlying codebase was chaotic back then.

Johannes and Michael laid the groundwork for transitioning into a product company early on. Not only by introducing a professional workflow (Johannes) but by also creating the environment and space needed to build a product, aside from the hectic day to day agency business (Michael). This part is really tricky and also the part where a lot of agencies struggle with: Finding the time and budget to create a product during hectic daily routines.

Development Process

Obviously moving from an agency to a product focused company means that a new mindset has to be adapted. This didn’t happen overnight of course. It’s the aforementioned slow but consistent transitioning into a quality oriented thinking in terms of code. This includes but is not limited to using versioning, automated testing, code reviews and creating a release strategy. While the agency setup is driven by deadlines, the product approach focuses on releasing often.

„When migrating developers from creating short-lived marketing campaigns to long-lasting, always-on SAAS-solutions, it’s a big challenge to implement a complete new mindset regarding architecture, code and sustainability. „

Johannes Nagl (https://www.bugtrackers.io/interview-swatio-johannes-nagl)

Michael was fascinated by the Facebook attitude of “Move fast and break things”. So Johannes and his colleagues integrated this mindset into their daily workflow. This also means deploying a couple times a day.

“Almost everyone in our team loves Facebook’s mantra: Move fast and break things!”

Johannes Nagl (https://www.blossom.co/blog/development-workflow-by-example-swat-io-walls-io)

Shifting from so called agency developers, as Johannes described it, to a Software Development team is the foundation to creating reliable and functioning software, that can evolve over time.

“Code Quality, Coding Guidelines, Code Reviews, Pair Programming. This is all happening now on a daily basis. Establishing these workflows is really important and every time we did something wrong we reflected on our workflows and introduced something new.”

Johannes Nagl (https://www.blossom.co/blog/development-workflow-by-example-swat-io-walls-io)

Swat.io has been successful with getting the right set of tools in place and the mindset to enable a continuous delivery workflow. Further more Johannes documented certain aspects and processes — as a constant reminder for the team and new developers joining team.

Communication

Die Socialisten have a weekly meeting where they discuss pending problems, things that went well and where everyone gets up to speed on what’s next in the pipeline. Other than that one official meeting, they use tools like HipChat for internal communication, Blossom to keep everyone on track with the current development status and tend to use a bug tracker to communicate with their customers in a direct fashion.

They keep communication overhead to a minimum, mainly focusing on building the product and communicating inside the individual teams (Walls.io / Swat.io).

Their non-dogmatic approach to Software Development is very helpful — including having a transparent communication flow, that includes everyone inside the team, avoiding communication hierarchies and enforcing one to one communication between every single member. Johannes highlights the advantages: „The more transparency we have, the less we need to manage communication, the more opportunities we have to detect and see problems. More opportunities for improvement — as everyone has insight into what’s going on.“

Culture

Team culture plays an important role at swat.io.

The Swat.io/Walls.io teams don’t take hiring easy or see it as another to-do task. Michael and Johannes have a clear idea on who they want to hire — meaning what hard and soft skills fit into their team. This can lead to a hard time finding the right people

Michael mentions “This is one of the hardest tasks”, although no one has ever had to leave the team once he got hired. This leads to less frustration and a higher moral. “Somebody has to fit into our company culture, has to fit into the team.” (Michael)— Technical skills are important, especially a track record of projects and experience is important, not a skills list per se. “You can’t find the ideal candidate according to a list anyway.” (Michael)

As already mentioned sometimes it takes months to find the right candidate. That means the technical skills and the project experience as well as the mindset and soft skills have to fit their culture and the respective team. Their track record of never having had to let go of any employee speaks for itself. People have left Die Socialisten in the past — but only to proceed to new challenges not due to internal conflicts.

Their now legendary Camp 404 highlights how well they focus on their culture to quickly cooperate and build things. This camp is a one week long trip, where the company locks itself inside a house and does fun activities as well as taking the time to experiment with new features, technologies and products. Camp 404 has become an inspiration for other companies here in Vienna. This camp has taken place every year since the company has been founded. Die Socialisten are very consistent in what they do.

Add the non-hierarchical approach they have. “Titles are not important” (Johannes) — people going for titles will have a hard time working at Die Socialisten.

Also nice to mention that they have that one day in the week where they get to cook and eat together. A colleague introduced that a couple of years ago and it has become a ritual since then.

Learnings

Die Socialisten are a great example for how one agency moved from creating short lived campaigns to a SaaS business. Transitions take time and they also need the right mindset, people, timing and environment.

Simply building a product is only part of the challenge. Moving from a deadline to a feature oriented mindset can be very complex or daunting with the wrong set of circumstances. While the prior mindset mostly focuses on getting things out at a predefined date, the latter encompasses aspects like code quality, architecture and product management.

For any agency that is thinking about moving into the product space or has been trying and is currently struggling with the transition: take a deeper look into your culture, environment, communication, mindset and development process. Do these aspects fit into the direction you want to transition to?

Thanks to Michael Kamleitner and Johannes Nagl for the talks and great insights.

More information on Swat.io here.

If you’re interested in working for swat.io then check their job section.

--

--

A. Sharif

Focusing on quality. Software Development. Product Management.