Last Updated on August 13, 2024
Tech readers rejoice! Inspirationfeed landed an interview with expert mobile developer Anant Saxena, who has led major projects for well-known software brands, including the FinTech app Mint.
Saxena led a major redesign of Mint, as well as the creation of the 10-minute tax filing experience on mobile, the former of which earned a Webby Award for Best Software/App.
He’s also won multiple internal awards at Intuit for his work on TurboTax, and he has a patent pending as well.
But the focus of today’s interview with Saxena is the many optimizations Saxena has made to mobile development workflow, a topic that should be especially interesting to any of the devs out there who understand all too well how bottlenecks can form and deadlines can slip by.
The good news is that Saxena has made leaps and bounds in this area, and based on what we’ve seen so far, we’re certain that he’ll deliver further workflow improvements in the future.
How long have you been working in mobile development now? Has mobile development as a whole evolved during that time?
I have been working in the mobile domain for seven years now, leading multiple products like Turbo, TurboTax, and Mint. The mobile user base has evolved and changed a lot in the past few years. Earlier mobile was an afterthought, but these days it’s a mobile-first mindset as more and more users love to do basic things through a mobile device.
In terms of mobile development, what has evolved is faster experimentation to identify product-market fit. There are hundreds of apps in the market but what stands out is driving engagement and retention by bringing customers back into the app on a daily and weekly basis.
You’ve greatly reduced experimentation and delivery effort. Can you elaborate on how this was executed and what some of the biggest benefits are?
Improving velocity by reducing experimentation was a 9–12-month effort, and we focused on prioritizing the technology investments to build mobile capabilities that can help other mobile products as well.
The work in the three areas listed below was the major factor in reducing the development efforts.
The first area was the re-usability of UI components. The experience we deliver for our customers to interact with the app is such a critical component that leads to a richer and more interactive UI and hence the complexity to translate the design into code becomes equally challenging. One area of technology investment we identified was to build design systems or design libraries which is basically a bank of already created UI components that will help us with the reusability of the UI components.
Secondly, server-driven architecture. As the experiences are built on iOS and Android platforms, it’s important that we leverage most of the code or logic, and the best way to ensure that is content driven from the server side. There are two benefits to this approach: write once, leverage across platforms, and faster iteration time.
And third, analytics Tracking, AKA Beaconing. Understanding user behavior is very important to understanding how we can make our product better for our customers. I led the fresh approach on how we do beaconing by investing in beaconing as a config capability where we abstracted out the beaconing code from the app and moved to a shareable config hosted on a server so that we can leverage it across platforms and also make changes without the App Store or Play Store deployments.
What are the most important areas of resource investment in mobile development?
The important areas of resource investment were people, processes, and technology.
First, technical capabilities. Investing in the mobile foundation layer was very important so that it can benefit other mobile products. We invested in re-usability, analytics tracking, as well as server-driven architecture.
As for process improvements, we wondered how we could build a culture and process where teams are able to execute independently and quickly. We invested in organizational changes where independent teams were able to move fast and independently.
And on the people side, building skills for the future is very important. We invested in mobile development skills by organizing training sessions, knowledge-sharing sessions, etc.
Are there any significant downsides to reducing experimentation and delivery effort?
There are a couple of downsides when we think of how things used to be.
As we experiment quickly, how can we prioritize the quality of the product? Since we move quickly, balancing the long vs. short term is key in the decision-making process.
The other downside is working out how to ensure that mobile engineers are able to do the best work of their lives. Every time we think about writing once and leveraging everywhere, the question that comes to mind is whether engineers are leveraging and growing their skills.
Do you find that a certain amount of stress is to be expected during mobile development?
Mobile development requires an App Store and Play Store review process from Apple and Google, which takes 2 to 3 days. When you want to move quickly, these 2 to 3 days matter a lot, so it’s a constant source of stress on how can we make up time in other areas. The other stress factor is that we don’t know if the work and experiments we launched will work with customers.
During the past year, we launched 3 to 4 new features and only one worked well with customers, so you need to pivot very quickly in mobile development.
Are there any other major development optimizations or improvements you’ve implemented recently?
Yes, we have worked on the mobile data layer as well as the mobile navigation framework, which allows us to break the monolithic code base into modules and hence independent teams control the development efforts, improving the velocity.