Building to Scale: How Can You Approach Scaling Your Product?

With great power, comes great responsibility.

Your product is a success and now your business is seeing an explosion of growth. All of this growth is putting a strain on your tech. Recently, it is becoming more difficult to add more users to your product. There have been a few small outages. This is when you start hearing our team at Borne throwing the word ‘scaling’ at you.

But what do we mean when we say this?

And how can you make informed decisions about scaling your product?

So, what is scaling?

You should be asking ‘Will this scale?’, no matter what you are referring to. “Scaling” can be a loaded word. It can mean both everything and nothing at all.

What are you trying to scale?

The number of users your product can support?

Data throughput?

The hardware used by the app?

It is also important to note the difference between performance and scaling. Performance is the amount of work you can do with your existing resources. Scaling itself has multiple meanings, sometimes referring to increasing the amount of work the app can do or increasing the number of resources available to the app. Improving the application’s performance is one of several tools at your disposal to help solve scaling problems.

How can you scale?

There are many different levers our team can pull behind the curtain to help meet your scaling goals, some of which are more expensive than others. We have listed actions you can take and we would recommend following them in this order:

1. Define your goal

2. Identify and profile bottlenecks

3. Hardware

4. Optimising performance

5. Changes to architecture

1. Define your goal

Before we do any work, it is important to know what you are working towards. Any talk of “scaling”, an app is meaningless without any numbers attached. You need to compare:

We need to scale this app

vs.

– What changes do we need to be able to scale up to 100K daily users?

– We are onboarding a new supplier. We will need to be able to handle importing their catalogue of 10K parts into our system.

– Tickets for a hotly anticipated event are going on sale next week. Our ticketing system needs to be able to support the large influx of expected transactions in the first five minutes.

Improving performance and more resources might help you reach your goal. However, this will add extra cost and complexity if these improvements do not address the bottleneck.

2. Identify and profile bottlenecks

One of the worst things you can do is blindly make changes hoping for the best result. It is important to figure out what is causing the issues you have been seeing before making any changes.

– Is your database becoming overwhelmed?

– Is your web server running out of memory?

– Are you receiving too many web requests simultaneously?

– Are you getting rate-limited by a third-party service?

For the vast majority of web-based apps, the first bottleneck you see would be a database. Once you know what part of your system is slow, then you need to understand why and how slow it is. And not just in a qualitative “this is slow” sense. You want quantifiable measurements that you can use to compare before you and after we make the changes.

3. Hardware

If you keep adding users, there will come a time when you outgrow your hardware. Hardware is cheap, and cloud providers make it trivial to add more. Some places allow you to scale up hardware simply by dragging a slider.

Go ahead.

Upgrade to that database plan with a higher row limit. Increase your max RAM.

… Just make sure you identify your bottlenecks first.

Putting a faster web framework in front of a slow database may not have any measurable speed or throughput increases. Some bottlenecks can’t be solved easily by throwing hardware at them. For this, you may want to dip your toes into doing some performance optimisation.

4. Optimising performance

Once you understand the problem you might be having, it is time to make some changes. The cheapest solution is often to do some performance tuning. These are usually small code changes that allow you to get more work done with your existing hardware and architecture.

Keep in mind, tuning can also have some downsides. The general advice that our team can give you around caches and performance work in general, is don’t add one until you need it. Otherwise, you pay their cost without getting any value in return.

5. Changes to architecture

You will the point where your code is as efficient as it can be without adding more hardware. Now is the time to revisit the architecture of your application. This might be the time you want to start sharding your database or adding a read-replica. It might make sense to move to a streaming data pipeline. Re-architecting is pricey so you do not want to get it wrong, Always profile first and make sure you don’t have problems that can be solved with smaller-scale performance tuning.

Scaling can be a really intricate topic that can involve a lot of tradeoffs. There are countless technical solutions that can help you scale, ranging from single-line code changes to massive restructures of your digital product.

If you are facing product scaling challenges and would like to discuss specifics or you do not know where to start, get in touch!

share:

Meeting In The Middle: How a Product Team and Product Owner Can Build Ideas into a Reality

Our developers strive to produce high-quality, well-tested code that works seamlessly. Code should be easy to extend and simple to understand, both for our future selves and other developers. In our field, we constantly have conversations about writing maintainable code and coming up with good abstractions for the underlying business domain. There are many sayings that go along with coding about maintaining perfection, but is that the right approach?

At Borne, the heartbeat of our company is client projects. Working with clients, specifically product owners and founders, and making decisions together about the direction of the product is a constant in our work daily. As it naturally happens, product owners and founders are excited to move at a rapid pace, delivering features to users as quickly as possible. So how can we balance that desire with making the right technical decisions? Sometimes creating software in a maintainable, scalable way can be slower than simply building something which works, and the benefits might not be obvious immediately to a non-technical product owner or founder.

Open Communication

Like so many aspects of what we do, a big part of the answer is good communication amongst our team. Having an open and honest conversation with the product owner about the trade-offs on each side of a technical decision is really important. In our experience, these conversations tend to be longer and more fleshed out the first few times they happen on a project.

As the project progresses, trust between developers and the product owner builds, and we tend to understand each other’s judgements and motivations better. As developers, we have a responsibility to communicate clearly why we would recommend a particular technical decision – these decisions could have been made for reasons of code quality/maintainability or performance.

What might the repercussions be of not taking that route? As the product owner, it is important to communicate the context of the decision. Is there a specific urgency around getting this feature shipped right now that makes taking a technical shortcut worth it?

Addressing Technical Debt

An important part of the conversation is the concept of technical debt. Technical debt brings a financial analogy to our project codebases. The idea is that shortcuts that we would make while writing code and making code design decisions result in debt. The debt can exist in the form of badly organised code, poorer abstractions and worse quality code in general. Unless the debt is paid off by addressing these compromises, we would pay interest on the debt through changes and additions to the codebase taking longer. This ultimately could result in features being slower to ship. Furthermore, because concepts in the code are less clear, it becomes easier to accidentally make the wrong change and ship bugs to your users.

This definition may sound doom and gloom. But, treated the right way, technical debt can be a valid, useful option during a project. Technical debt can be used positively if it’s accumulated deliberately and prudently.

So what does that mean?

We have the responsibility to make sure such decisions are considered thoroughly and not made in isolation. Our designers and developers are there to have the conversation with. Another point to raise is to have a plan in mind for addressing the debt. What might a better solution look like? Are there future features that touch on a similar area of the codebase which might provide a good opportunity to tackle the debt when constraints are different?

In this scenario of a client project, an important part of the learning process and a feedback loop is to openly call out scenarios where technical debt is slowing us down in developing your product, and raise whether now is the right time to pay off the debt through refactoring or revisiting past decisions made about the architecture. This is where our team can help you in understanding and taming technical debt in your product.

Code Quality Maintenance

Keeping in mind, consciously accumulating a small amount of technical debt does not give us a free pass to throw good software design out the window! The important thing to remember is that even if we’re making trade-offs, we always want to ship high-quality code.

Having honest conversations between product owners and developers is critical. Reaching an understanding of each other’s motivations is an important step in any project. Our team at Borne have found that it is useful to get into the habit of having these conversations early in a project, to avoid having them for the first time when your milestones are approaching.

share:

Top Digital Product Studios in London

At our digital product studio London, we know the decision to develop your own app should never be taken lightly. Whilst the cost and time involved may deter you, the reward that comes from London mobile app development and seeing an incredible finished product is priceless. By choosing to work with our London based digital product studio, you will have the expertise of world-class London app developers and London app designers, here every step of the way to help you build your world-class app.

For existing business owners, there are a huge number of reasons to develop your own app, and as a London digital product studio, we know a thing or two about mobile applications and the role they play in your business. With your app, you can create loyalty amongst your clients and further develop your brand. It’s a great way to ensure the competition don’t get ahead of you as there is no denying that people now turn to apps over a standard website.

Finally, in a social media-obsessed world, apps are becoming more and more important. Implementing social media into your app will allow users to give feedback, chat to other members and share or discuss products. Don’t get left behind! Contact our digital product studio London to start creating your London mobile app, and ensuring you are doing the best thing possible for your business.

For aspiring entrepreneurs, there are so many different roads to running a successful business, but here at our digital product studio London, we believe London app development is one of the best, as there are so many opportunities for growth after your US app is launched. Nowadays smartphones are the number one method of communication.

People spend more time using their smartphones than they do with their partners, families or friends. Whilst we appreciate that this statistic is fairly concerning, it means great things for aspiring entrepreneurs who want to get stuck into an industry with unlimited growth opportunities.

Building an app with our digital product studio in London now means you will be just in time to meet this huge demand. As smartphones get better, the number of London app users gets larger, and there is still a market out there for almost any kind of app. All you need is a trustworthy digital product studio that will build a product to match your vision and our London digital product studio team at Borne Agency are here to do just that.

share:

Borne Curious Series: Drafting Blueprints To Facilitate Product Growth

So, you have gotten to this point. You feel like you have conquered the mountain. Your MVP was a success. Your understanding of the market was spot-on, and now you have a substantial growing user base. To support these features, your business has added people and processes to the mix. Your product is delivering massive value to your customers, but cracks may start to show. You are not as fast to the market with new features as you used to be. Customer service inquiries are increasing and it is taking longer to resolve them. You are reacting to user feedback instead of actively seeking it out. Reactive rather than proactive.

These are the issues that adversely affect your product’s ability to deliver value, but they are not endemic to the product itself. When you think about it, the product design tools with which you are familiar may not be able to identify and help resolve these issues.

Let us take a step back and take a look at a case study that we have come up with the highlight of these issues:

A local furniture retailer thinks they could increase their revenue if they add online ordering and delivery to their methods of operation.

Their MVP’s critical path would look something like this:

Wouldn’t you know it? Our case study’s online ordering takes off and is a success! It is so successful that the business grows to include a  second location and additional warehouse space. The business adds local pickup as a feature and hires additional staff to meet the demand.

But they hit a bump in the road. Unfortunately, they also start to experience serious customer service and organisational issues — inaccurate inventory and late deliveries. They need to press pause and consider the organisational people and processes that support their retail service.

Here is what our online retailer’s current process might look like:

  

When coming up with this case study, we noticed some obvious shortcomings in their fulfilment and inventory management processes. When they had a single location doing a few orders a day, it was easy for an employee to check email, pick an item off a shelf, and prepare for shipping. As their service and organisation has grown, that process has shown itself to be out of scalability’s reach. Their ultimate business goals are still the same, and the customer journey remains unchanged, but now should be the time to address these differences.

For organisations with a maturing product, sitting down with our team at Borne and conducting service blueprint meetings is a great next step. The blueprint will provide comprehensive relationships between your product and the people and processes that will support it. This can help your business identify opportunities for improvement, discover weaknesses and bridge cross-team efforts. It can broaden your focus, showing your product as the customer-facing aspect of an organisational service.

Through documenting your organisation’s services, you can identify backstage actions and processes that are critical to delivering value to the end-user. The customer experience can remain a focal point of the service, but with a blueprint, we can now have visibility and a shared understanding of how that experience is supported behind the scenes. What would have been an ad has or loosely organised, can now be formalised, measured, and iterated on. Instead of putting out fires, we can focus our energy on thoughtful, strategic growth for your product.

A service blueprint is a robust and powerful tool, but we understand that creating it does not have to be a major investment. With our committed team of designers and project managers at Borne, we can facilitate this through sprints to document and analyse the existing service, and define goals, responsibilities and the next steps for your product.

Are you interested in hearing how we can incorporate a service blueprint into your product development plan to facilitate growth?

Don’t wait. Let’s get in touch!

share:

Borne Curious Series: Why You Shouldn’t Develop Your Product

At Borne, our focus is on building products that are not just beautiful products to look at. Our team also strive to build the right things, at the right time and for the right reasons. So let us take a step back and imagine this experience, although you may have experienced this already.

You are proud of your business and your online presence, spending your budget on design and development when an idea creeps into your mind. Maybe you were influenced by your team or the idea came from reading tech news. Wherever the thought came from, you now have the idea in your head…

We need a digital product for our business!

We are here to tell you that unless you have really taken the time to think this thought through, you are probably wrong.

Yeah, we said it.

Don’t get us wrong, we love digital products. We create them. And we want to share our observations so you do not waste your time building an app that does not advance your business goals and could hurt them in the process.

So what are some of the challenges and the lessons we could learn from them?

A cheap product can damage your brand

Whenever we slow down to think about an example of a cheap product that performs poorly and frustrates the user every time they use it, a few apps may come to mind. It is important to note that these apps may not just be in the Fortune 500, but also in the top 50. When you consider this, it is not like they did not have the money to build it right the first time. If you were asked for a recommendation, it is highly unlikely that you would recommend this product to your friends and family. This is anti-marketing and you do not and cannot afford that.

If you cannot or will not spend the money to do it properly, do not build the product. Spending the money upfront on building your MVP with feature updates on the horizon is key to success, however, it is not a guarantee.

Just a side note, if you work for one of these Fortune 500 companies and feel like we are referring to your product, get in touch with our team at Borne. We can help you.

Useless products do not grow your brand awareness

This topic is a little bit trickier to discuss. Let us use the scenario: you have come to Borne Agency and we build you a product that is beautiful and easy to use, however, it is also useless. This sounds a bit harsh, but what we mean by this is that the functions that it provides are not the ones that users need or will want to take on their mobile devices.

What would be a real-life example of this?

Maybe your business wants to sell fitness equipment. You approach an agency that builds an amazing fitness-themes app to buy your fitness equipment. The animations are fluid, the designs are on point, and when you use it, you feel like you are a fitness pro and purchasing some fitness equipment would be a good idea.

That should be the definition of success right? Wrong.

Because no one ever says, “I want to buy fitness equipment” and in the same breath say, “I really hope there is a digital product for this so I can complete this transaction while I’m on my morning commute.”

So what can we learn from this? If you cannot come up with a compelling use case that shouts, “You have to do this on a mobile device!” chances are you should not build a product for it. 

Overly-saturated product market

One of the final questions we will come across and collaborate on when building your product is,

“Who am I competing against?”

The answer is not the companies that are in your product market. The answer is every other digital product. Every digital product usage is a zero-sum game. If someone is using another app on their mobile device, they are not using yours. So your competitors will be Instagram, Facebook and Youtube, or whatever the hottest game is this month. On average, a person spends around 3-4 hours on their mobiles every day. So right there is where your competition lies. From the user’s perspective, they are likely looking to:

– Engage on social media platforms

– Communication

– Entertainment like watching a movie or play a game

– Kill time

– Completing a very specific task ie. banking

That is what you have to fight against. If your product is not the reason the user is pulling out their device, then your product is never going to be opened, and eventually, it will get removed. If you cannot come up with a solid proposal and reason why a user would choose to open your product instead of something else, do not build a digital product.

Winning them over

We can only speak from our own experience at Borne Agency and usage reports on clients we have worked in the past. People make really hasty decisions about whether to keep a product on their phone or reinstall it. The reasons can range from “I did not like the colours” to the more technical, “It crashed when I launched it”. Once a user has classified your product as a waste of space on their device, no amount of new features or fixes will bring them back.

In short, if your plans do not include an approach for winning over users quickly, do not build an app. So it sounds like we are trying to put you off approaching us at Borne Agency and not go ahead with your product build.

But, that’s not the final lesson! So let’s summarise what we know:

1. A quality product will cost more than you might expect. Be prepared to spend some money and commit to doing it right.

2. An app will only get used if it does something truly useful. Validate your ideas with our team at Borne before we start to build. We use product design sprints to achieve this!

3. Your product will only get used if users want to use it above all other apps.

And the final lesson, understand the challenges, question your assumptions always and only pursue a product build if you can answer why you’re building it, how your customers will use it and why they will want to launch it and enjoy the product experience.

share:

UK App Development Trends 2021

At our digital product studio London, we know the decision to develop your own app should never be taken lightly. Whilst the cost and time involved may deter you, the reward that comes from London mobile app development and seeing an incredible finished product is priceless. By choosing to work with our London based digital product studio, you will have the expertise of world-class London app developers and London app designers, here every step of the way to help you build your world-class app.

For existing business owners, there are a huge number of reasons to develop your own app, and as a London digital product studio, we know a thing or two about mobile applications and the role they play in your business. With your app, you can create loyalty amongst your clients and further develop your brand. It’s a great way to ensure the competition don’t get ahead of you as there is no denying that people now turn to apps over a standard website.

Finally, in a social media-obsessed world, apps are becoming more and more important. Implementing social media into your app will allow users to give feedback, chat to other members and share or discuss products. Don’t get left behind! Contact our digital product studio London to start creating your London mobile app, and ensuring you are doing the best thing possible for your business.

For aspiring entrepreneurs, there are so many different roads to running a successful business, but here at our digital product studio London, we believe London app development is one of the best, as there are so many opportunities for growth after your US app is launched. Nowadays smartphones are the number one method of communication.

People spend more time using their smartphones than they do with their partners, families or friends. Whilst we appreciate that this statistic is fairly concerning, it means great things for aspiring entrepreneurs who want to get stuck into an industry with unlimited growth opportunities.

Building an app with our digital product studio in London now means you will be just in time to meet this huge demand. As smartphones get better, the number of London app users gets larger, and there is still a market out there for almost any kind of app. All you need is a trustworthy digital product studio that will build a product to match your vision and our London digital product studio team at Borne Agency are here to do just that.

share: