Ambue Property Assessment iPad App

The Context

I joined my friend Lukáš Kubánek on this project to create an iPad client app for Ambue’s risk assessment system for retrofitting properties in the UK. This was a greenfield project where we built a comprehensive field assessment tool from scratch.

My Contribution

Lukáš did excellent work designing the UI and UX of filling out these long survey forms over the year prior. I continued with:

Beyond Development

What started as a development role to help out with the app grew into something far bigger. Rather by accident, I found myself helping this non-software-engineering company align their vision with achievable milestones.

This involved:

Technical Challenges

The app needed to handle:

Most challenging: this app was a client application, but there was no server, nor was there an API specification. So we needed to be careful with each assumption that we made and pro-actively suggest endpoint implementations.

Technologies & Architecture

We chose The Composable Architecture (TCA):

PhotoKit integration was crucial for managing large volumes of property photos while maintaining performance on iPad hardware and offering a native look and feel. We used Mijick/Camera for prototyping and it worked really well.

Team Dynamics

Working with Lukáš was a pleasure. We’ve known each other for years (thanks to Macoun) and have a great working relationship. He’s diligent and a thorough thinker and planner, so when I joined, the project already had an extensive documentation and a robust plan for the next steps.

The company had very flat hierarchies, so I talked to the CTO and CEO a lot to coordinate business goals with software implementation, and got immediate feedback from surveyors in the field whenever needed. Since everyone on the software side worked in silos, they were both very knowledgeable in their respective field and willing to help create bridges between the realms like database backend, cloud storage, and the Elm frontend to our app.

Personal Reflections

Our main challenge was in the many decisions that needed to be made, and the lack of higher-level orchestration of any kind.

Coming into a company where people worked on a software suite as freelancers, each in their own silos, made it tough to get a picture of the whole thing. Siloed development also means that there’s inconsistent boundaries between parts, and nobody in charge of making boundaries cross-able.

Although we were hired for a rather simple job, writing an iPad client for a complex form, the lack of everything server-side made it tough to do meaningful progress. Usually, you want to end-to-end validate your approach as soon as possible to not program yourself into a corner. But when one end is wholly missing, that’s impossible. You can only suggest so much bottom-up as a gun for hire.

So quite a lot of my work turned into lobbying for inter-team decisions on communication protocols, formalizing at least parts of the shared knowledge to offset the inevitable bus factor (especially with freelancers on short contracts).

This experience echoed my role in the Tap Challenge project years earlier, where I learned to wear many hats. I made decisions not for my own benefit back then, but for the business and client’s success. That mindset of thinking beyond code I enjoy writing and all the money I would love to be making – considering business value, team coordination, and long-term maintainability – proved invaluable here at Ambue. The difference was that at Tap Challenge, I had full control as project lead; here, I had to influence without authority, making the soft skills even more critical.

Impact

Whenever I talked with the CEO and CTO, they were impressed by my out-of-the-box thinking: it showed that my work as an independent developer for so many years made it easier for me to align business value with development, and not focus on the technical side too much. Although I came aboard as a mere iPad developer for hire, I stepped up and helped with project and product management where I could.