I was working for a long time at a startup in Hamburg, building web analytics systems before that term even existed. After getting tired and complaining a lot, my former boss told me to join ThoughtWorks so that they would show and teach me all the things I didn't know about software development. And to this day, I do still learn about software development.
I work as a lead developer, consultant and trainer. I'm equally excited about technical challenges and improving ways of working. Though it might not always sound like it - I'm a true optimist.
We are used to agile software development. The tools and methods to thrive towards continuous delivery are mature. We can spin up environments in minutes, test our software automatically and deploy to production with a single click.
Connected devices bring a new layer of complexity to a project.
Hardware prototypes evolve in much longer cycles than the software. Automated testing becomes a challenge when user flows spread across multiple devices and involve human interaction. Environments for continuous integration suddenly move back from the cloud to real devices on our desks.
This talk is about the lessons learned from a real life project that builds a system around a connected consumer device. The goal is to highlight some of the challenges and our approaches to tackle them. There are patterns evolving that are a good guidance for other projects.