Redefining Mobile App Development: The Journey Towards Composable Mobile
Anton Rogachevskyi
Redefining Mobile App Development: The Journey Towards Composable Mobile

Hello, I’m Anton, the CEO and tech leader at BrainCode. With 16 years of software development experience under my belt, the majority of which has been focused on mobile app development, I’ve had the opportunity to work with esteemed teams such as FishBrain, Crello, Volvo, Santander Bank, and Yahoo. Throughout my journey, I’ve been immersed in a wide array of projects, each with its unique business logic and requirements.

However, one common thread that I’ve observed is the significant amount of code that remains the same across these projects – be it 3rd party integrations, system API call outs, or large code patterns. This realization led me to question the efficiency of our development process and ponder on how we could optimize it.

The answer came in the form of ‘Composable Mobile’, a concept that emerged from the challenges of monolithic mobile applications. As apps grow, teams often find themselves rebuilding features into independent packages (SDKs) to make them reusable, making the project more developer-friendly, flexible, and faster to compile. This is where Composable Mobile steps in, transforming the way we approach mobile app development at BrainCode.

Composable Mobile

“This innovative approach works like a well-organized construction set – the modules are ready to be assembled, tested, and deployed.
Think of it as building a house using pre-made bricks, doors, windows, and roof tiles according to your design. Our composable approach makes app development easier and more efficient.”

At first glance, the Composable approach might seem similar to using side SDKs in your project. However, there’s a crucial difference. An SDK is a piece of code that implements a specific feature for a specific platform, such as networking, user interaction, logging, or animation. On the other hand, a module in Composable Mobile is something much bigger. It’s a standardized and configurable implementation of a feature or even a user story that captures all platforms – in our case it’s iOS, Android, and Backend. These modules have a high level of abstraction and are data independent, making them a game-changer in the realm of mobile app development.

Redefining Mobile App Development: The Journey Towards Composable Mobile

In BrainCode, we’ve taken the Composable Mobile approach a step further. We’ve pre-built a plethora of modules that cover not only common application features such as networking and UI, user profile, security, and push notifications, but also industry-specific features like AR, Navigation, IoT, e-commerce, AI, and HealthTech. We’ve even included integration features like the most common 3rd party integrations. This extensive library of modules allows us to build apps for our clients like configurable Lego sets. We can quickly assemble, disassemble, and reassemble these modules to create a custom solution that perfectly fits our client’s needs.

Of course, there’s still plenty of room for project-specific business logic. However, by leveraging the Composable Mobile approach, we can prioritize delivering value to our clients from the get-go. This not only significantly reduces the time to market but also optimizes budget allocation, ensuring that our clients get the best return on their investment.

As we continue to expand our library of modules, ensuring their compatibility and ease of use becomes increasingly crucial. It’s not just about creating new modules; it’s about making sure they seamlessly integrate with the existing ones and provide a user-friendly experience. To achieve this, we’ve devised a set of principles that each module must adhere to:

  1. Data independent: Modules should not rely on specific data structure and should be able to function independently.
  2. Fully configurable: Developers should be able to customize the modules as per their requirements.
  3. Mutually compatible: All modules should work seamlessly with each other.
  4. Well tested and documented: Clear and comprehensive quality management system and documentation is key to understanding and using the modules effectively.
  5. Pluggable: All modules should have similar in- and out- interfaces for easy integration.

In conclusion, Composable Mobile is not just a concept; it’s a philosophy that we’ve embraced at BrainCode. It’s our way of breaking free from the constraints of traditional mobile app development and stepping into a world of efficiency, scalability, and innovation.

BrainCode Composable Mobile Modules

In my upcoming posts, I’ll delve deeper into how we adhere to each of these principles at BrainCode. Stay tuned to learn more about our composable approach to creating modules that are data independent, fully configurable, mutually flexible, well-documented, and pluggable. We’re excited to share our journey and insights with you.

Explore our Composable Mobile Solutions at no upfront cost