Working at Scout24

Quick facts

  • ~12M Monthly Active Users
  • ~2M Monthly Active Users, iOS
  • Delivery cycle every two weeks
  • 80% Swift code, 20% Objective-C

Working on the iOS app at Scout has given me the opportunity to modernize the app a lot and add architecture that makes it easy to work on.

Tech Domain Owner - iOS

The Tech Domains were created at Scout to allow for more standardization across teams. Each technology has their own Tech Domain, and the owners of each domain create best practices and share them with engineering managers, product managers, and individual contributors. I was selected to be the Tech Domain Owner for iOS at Scout in early 2020.

2020 Covid Response: Fernbesichtigung - In-App Video Calling

I was the lead engineer for our product’s response to the Covid-19 pandemic. In four weeks, our team built and delivered a workable and high-quality MVP to our users, allowing them to make video calls and continue to view apartments using video chat. We accomplished this in a focused team of around eight engineers and one product manager, and worked quickly and efficiently together to deliver this amazing result. The details of our result can be found on the Scout24 blog. We were able to complete a backend that scheduled video appointments, an iOS and Android frontend that allowed users to take and make video calls using Twilio, and a web interface that powered booking, all during the height of a pandemic. I am really proud of the work we did as a team, and the feature was much appreciated by our users.

Design System: COSMA Mobile

I started and led an initiative to build a design system for mobile at Scout in 2020. Until this point, the standards for UX were localized in each team, with designers and engineers reusing various components that existed only in their scope of product. This resulted in many components with similar functionality being created, making more work for engineers and leaving the app UX inconsistent across features.

Establishing the design system was actually much more of an organizational task than anything else. To begin the initiative my colleague, the Android Tech Domain Owner, and I worked with designers to establish how the design system would function, and roughly how components would make it into the system. Next, we brought the engineers on board with the idea, as well as the product managers. This was done step by step, hosting different workshops to discover what the problems we face during our development of new features, and how the design system could help this.

From there, we began to move components that were previously scattered across the app into the COSMA framework, de-duplicating components as needed. The designers created their master Sketch files and did the same, for easy drag-and-drop capabilities for components. While creating new components, we decided to always do this alongside product work, in order to make the use case for the component immediately clear to all the stakeholders, as well as to ease the engineering effort needed to create the components.

Today, COSMA mobile has been a success, with new components being discussed at out COSMA weekly, then worked on alongside product work to be shipped with new features. There exists now an infrastructure for discussion of components, a process to add components to COSMA, and an DRY approach to creating UX at Scout.

Home Feed - iOS

The home feed is the first screen you see when you open the app, and its purpose is simply to give the user a quick overview of objects and offers relevant to their property search.

This was the first feature that I proposed to be architected as a framework, rather than integrated into the main app module. This way, the code was kept isolated from the rest of the app, resulting in much cleaner, sustainable architecture. I wrote a Medium post about how to do this.

Home Feed - Backend

The backend of the Home Feed is powered by a Node.js app running on AWS. I worked on this backend for nearly a year, scaling up the features of the home feed and adding more integrations to provide various departments within Scout a place to market their products and services. Our team handled the deployment and cloud architecture for this backend, including scaling and continuous integration.