Healthy mobile application growth
00:00 → 00:00
Hello!
00:00 → 00:03
Welcome to Merixstudio's webinar about healthy mobile
00:03 → 00:04
application growth.
00:04 → 00:07
I'm Aleksandra and I'll be your host today.
00:07 → 00:11
Joining me are Ayidin Guven and Jakub Kośla from Merixstudio.
00:11 → 00:11
Hi guys!
00:11 → 00:13
Hi! Hi!
00:13 → 00:17
Our goal for today is to guide you through the challenges,
00:17 → 00:20
risks and opportunities of scaling a mobile application
00:20 → 00:24
from a developer's and a designer's perspective.
00:24 → 00:27
But before we move on, I think it's time for introductions.
00:27 → 00:30
So guys, could you tell us a few words about who you are,
00:30 → 00:33
what you do and about your experience with mobile app
00:33 → 00:35
development and design in general?
00:35 → 00:37
Aydin, could you begin?
00:37 → 00:41
Sure. I'm a Senior Mobile Developer at Merixstudio.
00:42 → 00:44
Currently working with Flutter,
00:44 → 00:47
doing some cross platform mobile applications.
00:47 → 00:52
Prior to that, I worked on the back end as a back end software engineer.
00:52 → 00:55
Also did some team leading at some point.
00:57 → 01:00
Worked on various projects, big ones, small ones,
01:00 → 01:04
microservices, monolith apps, APIs, whole bunch of
01:04 → 01:06
different things.
01:07 → 01:10
Generally, I I work as a software developer for eight plus years,
01:10 → 01:14
five of it, almost five of it with Merixstudio.
01:14 → 01:15
Happy to be here.
01:15 → 01:18
Thank you. Kuba?
01:18 → 01:20
So I'm a Product Design Manager here at Merixstudio.
01:20 → 01:23
Prior to that I was a team leader and UI designer.
01:23 → 01:27
And before that I worked as a UX slash UI designer in
01:27 → 01:30
different companies before Merixstudio.
01:30 → 01:33
As a designer I worked for twelve plus years
01:34 → 01:38
on multiple different projects, most of them actually mobile
01:38 → 01:42
on different stages of development including scale up
01:42 → 01:44
which we will be focusing on today.
01:44 → 01:45
Thank you guys for the introductions.
01:45 → 01:47
I'm really excited to have you here.
01:47 → 01:50
Thank you for accepting my invitation.
01:50 → 01:54
As I said, today's topic are mobile scale challenges,
01:54 → 01:57
but before our audience faces them they need to build a
01:57 → 02:00
mobile application in the first place.
02:00 → 02:03
And for many this begins with an MVP that's functional yet
02:03 → 02:07
somehow truncated and there are numerous limitations be it in a
02:07 → 02:10
team count or budget and so on.
02:10 → 02:12
And with that being said, I'd like to first ask you,
02:12 → 02:15
do you think it's even possible to lay grounds for future
02:15 → 02:18
scalability from your point of view?
02:18 → 02:19
Sure.
02:19 → 02:21
So the process starts usually from design,
02:21 → 02:23
so maybe let's start from If
02:24 → 02:26
you want your mobile to be scalable in the future,
02:26 → 02:30
I think you should put in your priorities or or let's say
02:30 → 02:32
design principles two things.
02:32 → 02:35
It's consistency and modularity.
02:35 → 02:40
Consistency means that every element of the interface is
02:41 → 02:46
uniform and behaves and looks similarly across the app.
02:46 → 02:50
So that you create this sense of familiarity and control
02:50 → 02:51
for the user.
02:51 → 02:54
And because of that, they can feel
02:54 → 02:56
comfortable using the app, whatever they are doing,
02:56 → 02:57
wherever they are.
02:57 → 03:00
And the second thing is modularity,
03:00 → 03:03
which is based on the atomic design methodology.
03:03 → 03:05
It basically means that the app,
03:05 → 03:09
the screens are break into smaller pieces,
03:09 → 03:13
sections and modules or even atoms.
03:13 → 03:17
And because of having those bricks,
03:17 → 03:19
we can reuse them in the whole application.
03:19 → 03:21
We can add them, remove them with ease,
03:21 → 03:23
with little or no customization.
03:23 → 03:26
To accomplish that, we also work with documentations.
03:26 → 03:30
We create style guides, we work with design systems and so on.
03:30 → 03:32
But those I think we will be discussing a little bit later today.
03:32 → 03:33
Yeah.
03:33 → 03:36
Definitely, because there is so much to talk about in this case.
03:36 → 03:36
Yeah.
03:36 → 03:40
Maybe I can add a few few more things from the technical perspective.
03:40 → 03:43
Of course, we acknowledge that MEPs have a bunch of limitations about
03:43 → 03:48
time, budgets, human resources, nerves sometimes.
03:48 → 03:49
But as a developer,
03:49 → 03:53
you can of course put some kind of fundamental things into it,
03:53 → 03:57
like you can already start with the supporting multiple
03:57 → 04:00
languages, currencies, different time zones,
04:00 → 04:01
different time formats.
04:01 → 04:04
You can already include them in the system,
04:04 → 04:07
so you don't need to add them later after the MEP,
04:07 → 04:10
which can be quite a quite a headache.
04:10 → 04:11
Also,
04:12 → 04:15
I recommend having a mobile first approach whenever you
04:15 → 04:18
develop something or even design something.
04:18 → 04:22
So this is this is because mobile applications have bunch
04:22 → 04:25
of whole different set of limitations
04:25 → 04:29
and possibilities like different resources that you you use.
04:29 → 04:31
So you have to deal with different set
04:31 → 04:35
of problems in order to achieve this kind of mobile applications,
04:35 → 04:39
which is different than different than a simple website in this case.
04:40 → 04:43
So I recommend dealing with those problems in before you
04:43 → 04:47
you deal with, let's say before the MVP so that you will
04:47 → 04:51
save up valuable development time.
04:51 → 04:55
Also you can already more or less know what kind of
04:55 → 04:56
platforms you support.
04:56 → 04:59
Are you really planning to support mobile applications or
04:59 → 05:01
if you support which ones?
05:01 → 05:05
Are you supporting iOS and Android or vice versa?
05:05 → 05:09
Or are you supporting Linux apps or whatever you wanna support?
05:09 → 05:12
You have to decide in this first first phase.
05:12 → 05:15
That also leads to roadmap, basically having a roadmap.
05:15 → 05:20
So if you already have a more or less a roadmap and you
05:20 → 05:22
can base bunch of assumptions to it,
05:22 → 05:24
it's very useful for developers.
05:24 → 05:27
Also, I think for designers as well, it's very useful.
05:28 → 05:31
So that we can have more accurate assumptions.
05:31 → 05:32
We can use this as a guide.
05:32 → 05:36
We can craft better better systems right from the beginning.
05:36 → 05:38
And how about the tech backbone?
05:38 → 05:41
Because if you browse the scalability,
05:41 → 05:44
then you'll probably find loads of content about, you know,
05:44 → 05:48
bulletproof, tech stack, languages, libraries, and so on.
05:48 → 05:50
Is this really a thing from your perspective?
05:50 → 05:52
So about the technical backbone, of course,
05:52 → 05:54
in my opinion, it should come from after the design phase.
05:54 → 05:57
So you more or less know what kind of
05:57 → 06:01
tech stack or infrastructure you will need for this system.
06:01 → 06:05
Also, CICD pipelines and test plans according to what kind of tech
06:05 → 06:07
stack that you wanna have in this case.
06:08 → 06:11
Also, you can more or less decide what kind of third parties that
06:11 → 06:14
you wanna include or services you wanna include in your in
06:14 → 06:17
your system right at the beginning.
06:17 → 06:21
I recommend spending additional time in those in in in
06:21 → 06:26
this, make additional research in order to find a much better fit.
06:26 → 06:29
Because if you already have more or less a plan how the
06:29 → 06:33
system will develop over time and you find a
06:33 → 06:39
better fit in terms of in terms of tech stack or let's say third parties,
06:39 → 06:42
you will save a bunch of technical debt in this case in
06:42 → 06:44
the later periods of
06:45 → 06:46
this project.
06:47 → 06:49
Afterwards you go on with creating a navigation map,
06:49 → 06:53
you think about an architecture and maybe
06:53 → 06:58
add error reporting tools and that's that's pretty much how it works.
06:58 → 06:59
So that all makes sense.
06:59 → 07:03
I'm glad that you mentioned reporting tools because that's
07:03 → 07:06
also quite a crucial thing, right?
07:06 → 07:10
Starting tracking things that are going well and the
07:10 → 07:13
things that are not going so well and that you should focus
07:13 → 07:15
on in the later phases.
07:15 → 07:17
Could you tell us a bit more about these?
07:17 → 07:20
I mean, the ones that you enjoy using or maybe the ones that
07:20 → 07:24
our audience should use if they want to keep their mobile
07:24 → 07:26
application healthy?
07:26 → 07:31
In my opinion, it's gonna be wrong to recommend one brand or the other.
07:31 → 07:32
These tools are quite
07:33 → 07:35
they are quite different from each other and they offer
07:35 → 07:39
different services, different features and so on.
07:39 → 07:42
You just need to gather a list of needs
07:42 → 07:44
that you you you need
07:44 → 07:45
you need basically.
07:45 → 07:48
Gather your needs and check if those needs are matching
07:48 → 07:52
whatever this this error reporting tool is providing.
07:52 → 07:55
In my case, in my development journey,
07:55 → 07:57
used mainly two tools.
07:57 → 07:59
One is Sentry.
08:00 → 08:04
I used it for mainly for back end projects because of its
08:04 → 08:08
easiness to integrate, ability to manage
08:08 → 08:11
issues, manage your teams.
08:11 → 08:15
So if you work on multiple people development themes,
08:16 → 08:18
you can somehow manage this easily.
08:18 → 08:20
Otherwise, you don't know who takes care of what,
08:20 → 08:22
who is taking care of which bug, and so on.
08:22 → 08:24
So it gets kind of lost.
08:24 → 08:27
About mobile projects, I used Crushlytics,
08:27 → 08:29
is actually from Google.
08:29 → 08:32
And for mobile projects, because I'm a Flutter
08:32 → 08:36
developer, so I use Google services heavily including
08:36 → 08:37
Firebase.
08:37 → 08:41
And Crushlytics is basically a service of Firebase.
08:41 → 08:45
So it's very very easy to integrate because you more or less
08:46 → 08:50
heavily or almost all projects you use Firebase services.
08:50 → 08:51
And you just include one thing,
08:51 → 08:56
use also Crashlytics or cloud messaging, whatever you need.
08:56 → 08:58
And it's it's very
08:58 → 09:01
very, how to say, small small footprint.
09:01 → 09:05
It it gives a small footprint in your in your system.
09:05 → 09:08
And how about the design tools in this case?
09:08 → 09:12
I absolutely agree that you need to use analytics tools in
09:12 → 09:16
in your app if you want to adapt a product oriented approach.
09:16 → 09:20
It's crucial to introduce analytics from day one, basically.
09:20 → 09:22
And they give you a lot of insights,
09:22 → 09:25
not only about crashes and errors, like I didn't said,
09:25 → 09:28
but also the information about where the users basically
09:28 → 09:31
abandon the app, where are their issues,
09:31 → 09:33
what takes them too much time and so on.
09:33 → 09:37
So you can measure a lot of things that can basically be
09:37 → 09:41
base for your scale up or any other investment for that matter.
09:41 → 09:43
So look for the pain points, look for the blockers,
09:43 → 09:44
things like that.
09:44 → 09:45
But you know,
09:45 → 09:48
introduce those analytics as soon as possible so that you
09:48 → 09:53
can draw conclusions as soon as possible basically.
09:53 → 09:55
And not regret it later, right?
09:55 → 09:56
Exactly.
09:56 → 09:57
Yeah.
09:57 → 10:01
So say we follow your advice and we try to future proof the
10:01 → 10:03
mobile application.
10:03 → 10:07
I feel that jumping straight into the scale up phase sounds
10:07 → 10:11
almost too easy because from our experience we know
10:11 → 10:14
that most successful projects start with the thorough
10:14 → 10:19
discovery and the analysis of the SS state because this
10:19 → 10:22
gives us greater insight into what we're dealing with.
10:23 → 10:27
So from your perspective what things should we try to
10:27 → 10:32
analyse to make sure that we are ready for scale up?
10:32 → 10:34
So let's start with this.
10:34 → 10:38
If you want, before any scaling going straight away into investment
10:38 → 10:41
and so on, make sure that you have a good reason for it.
10:41 → 10:44
And I think the best way to
10:44 → 10:49
recognize the moment when you need to scale your app or to invest
10:50 → 10:52
any way is to listen to your users.
10:52 → 10:55
And you can do it both actively and passively.
10:55 → 10:58
By passively I mean just give them an option to send you a
10:58 → 11:02
feedback or see what are the reviews in App Store or on
11:02 → 11:03
Google Play, right?
11:03 → 11:07
But if you want to do it more actively then conduct user research.
11:07 → 11:10
And there are many techniques how you can do this,
11:10 → 11:15
but basically using those observation techniques and
11:15 → 11:17
feedback methodologies you can
11:18 → 11:21
gather the information, what are the, like we said before,
11:21 → 11:23
pain points or blockers or habits,
11:23 → 11:27
needs that they are driving the users, right?
11:27 → 11:31
And the type of the research you will conduct is based on
11:31 → 11:34
the type of the product you have, the budget, timeline,
11:34 → 11:35
target audience,
11:35 → 11:38
and even environment that they are using the app.
11:40 → 11:42
The other
11:42 → 11:47
tool that can bring you closer to the healthy scale up is UX audit.
11:47 → 11:49
That helps you to
11:49 → 11:53
avoid legacy issues before introducing new features,
11:53 → 11:58
helps you to find out what are the quick wins and
11:58 → 12:01
even chip improvements that you can do for your app.
12:01 → 12:05
What's cool about UX Audit is that it's not necessarily
12:05 → 12:09
expensive process, so it's cheap to conduct and can give
12:09 → 12:12
you a lot of good insights what to do next.
12:12 → 12:13
Okay.
12:13 → 12:16
Maybe I can also add a few things to it.
12:16 → 12:20
Once basically everybody wants their product to grow and scale up.
12:20 → 12:22
That's quite natural.
12:22 → 12:25
But from the developer's perspective, you
12:26 → 12:29
also need to pay attention what kind of what kind of technical
12:29 → 12:32
problems you will be facing during this process.
12:33 → 12:36
So you need to also gather some data about what what can
12:36 → 12:39
potentially happen in the background in the system.
12:39 → 12:41
So how do you gather this information is also very
12:41 → 12:45
similar to these analytic tools or UX audit.
12:45 → 12:50
It's just on the code or on the on the internal part.
12:50 → 12:52
So you gather data from analytics and other reporting
12:52 → 12:54
tools like existing issues.
12:54 → 12:58
You check the backlog for existing bugs that you just
12:58 → 12:59
didn't resolve.
13:00 → 13:03
You can also take care take a look at the user reviews in the
13:03 → 13:07
market or that things you get from the
13:07 → 13:10
support to the support emails.
13:11 → 13:15
Also, you can conduct some kind of code audit for the existing
13:15 → 13:18
status of the application or the API.
13:19 → 13:23
Just to understand where are we right now and what
13:23 → 13:25
will be the cost of building on this.
13:25 → 13:28
And once you collect all these points, all these tasks,
13:28 → 13:32
just categorize them, you can prioritize them, sort them,
13:32 → 13:34
and take some action, like what are we fixing,
13:34 → 13:37
what's the cost of fixing them in order to healthily
13:37 → 13:40
move move on with the with the with the project.
13:40 → 13:41
Okay.
13:41 → 13:43
So from what you're saying,
13:43 → 13:46
I guess that the key takeaway would be that it's never a one
13:46 → 13:47
size fits all.
13:47 → 13:49
And it's you have many options,
13:49 → 13:52
so you need to pick them carefully.
13:53 → 13:54
It's true.
13:54 → 13:58
I mean, it's usually not like business decides something and
13:58 → 14:00
it just right away pops magically appears.
14:00 → 14:02
No. There are a bunch of people working on it.
14:02 → 14:08
Not only business decision is is is is not the only
14:08 → 14:10
deciding factor here.
14:11 → 14:14
And you also need to listen to cooks in this case,
14:14 → 14:18
and they are they are doing this food for you.
14:18 → 14:23
Actually, both of you mentioned one thing, that's reviews,
14:23 → 14:26
and I want us to discuss it in a bit more detail because I
14:26 → 14:30
feel that it's also quite an affordable and accessible
14:30 → 14:31
source of feedback.
14:32 → 14:34
From my own experience I can tell you that's how I spill my
14:34 → 14:38
guts if I dislike something about any kind of solution.
14:38 → 14:40
So what do you think about those?
14:40 → 14:43
So in practice, a lot of reviews are actually not that
14:43 → 14:47
valuable as we would like to them to be because of the
14:47 → 14:52
plague of fake reviews and also the fact that we tend to give
14:53 → 14:54
extremes.
14:54 → 14:54
Yeah.
14:54 → 14:58
Your rate is very low or very high and you rarely land in the middle.
14:58 → 15:02
That said, like you said, it's something that is affordable.
15:02 → 15:03
It's also passive,
15:03 → 15:05
so you don't have to do anything to just review not You
15:05 → 15:06
have to review them.
15:06 → 15:10
Right? But it takes a little or no time.
15:10 → 15:12
And analyze those because people
15:12 → 15:17
sometimes do give some sort of feedback,
15:17 → 15:20
interesting ideas or even just report it back in the app.
15:20 → 15:22
And this is still a user voice.
15:22 → 15:25
So you should hear it, you should consider it,
15:25 → 15:26
and if you see a pattern,
15:26 → 15:29
then absolutely it's worth to explore it.
15:29 → 15:30
I agree on that.
15:30 → 15:32
I mean, market reviews are
15:32 → 15:36
for sure relative like their user usually users' opinion.
15:36 → 15:41
So approach it with a grain of salt with a cold glass of water.
15:41 → 15:44
But these are just let's say,
15:44 → 15:46
are complementary to what you already gathered from analytics
15:46 → 15:48
and error reporting tools.
15:48 → 15:50
So it shouldn't be the only thing you rely on,
15:52 → 15:56
There is one more thing I need to ask you about before we move on.
15:56 → 16:00
And I think you saw that coming, and that's tech debt.
16:00 → 16:04
During our modernisation lives so many people told me
16:04 → 16:08
that it's scary, it's frustrating and it can
16:08 → 16:11
be very dangerous to the project.
16:11 → 16:15
So what's its role in the mobile scale up?
16:15 → 16:17
What's its place in the whole landscape?
16:20 → 16:21
A small metaphor here.
16:21 → 16:24
For me technical depth is like vegetables in your plate that
16:24 → 16:29
your parents tell you to eat and you avoid them until the last moment.
16:30 → 16:33
Please don't be that kiddo and just
16:34 → 16:36
deal with this technical debt early on.
16:36 → 16:39
Because building anything on top of a technical debt will
16:39 → 16:41
only aggravate the existing issues.
16:42 → 16:46
That means it will get harder and harder to fix,
16:46 → 16:47
maintain the codes,
16:47 → 16:50
bunch of people will not know how the system really works,
16:50 → 16:51
so they will find workarounds.
16:51 → 16:56
So it will get quite messy in a very very short time.
16:56 → 17:01
That means your system will get will attract fewer and fewer users.
17:01 → 17:04
That means less revenue for you.
17:05 → 17:07
But in in in general, it's a business decision.
17:07 → 17:12
I mean, we developers do not really we don't really have a saying in that.
17:12 → 17:16
So we are really relying on what a client or in this case
17:16 → 17:19
project a product owner will say.
17:19 → 17:22
If they say that, nope, we are carrying on with the plan,
17:22 → 17:25
no bug fixing, no refactoring,
17:25 → 17:28
This is basically on their heads,
17:28 → 17:32
not not not their responsibility and they are to
17:32 → 17:34
blame not the developer in this case.
17:34 → 17:34
Yeah.
17:34 → 17:38
I mean, what else can you do if you are not told to to deal with it.
17:38 → 17:38
Right?
17:38 → 17:42
Just they have to remember that once you carry on with that the
17:42 → 17:46
severity of the future problems will be much much much worse.
17:46 → 17:47
Yep. True.
17:47 → 17:51
So that's a good tip to remember
17:51 → 17:53
when dealing with a mobile scale up.
17:53 → 17:57
Okay, I think we've done with the preparation and we can move on
17:57 → 17:59
to the very core of our webinar,
17:59 → 18:02
so with these mobile scale up challenges.
18:02 → 18:05
And I'd like us to discuss three areas:
18:05 → 18:07
one that will be product growth two,
18:07 → 18:10
performance and stability and three,
18:10 → 18:12
mindset and team related stuff.
18:12 → 18:16
Maybe let's tackle them one by one starting with
18:16 → 18:18
product growth.
18:18 → 18:22
And my first question actually would be kind of simple but maybe tricky.
18:23 → 18:27
So what do you understand as healthy product growth?
18:27 → 18:30
After all I feel that it's a big term and it can mean
18:30 → 18:32
different things to different people.
18:32 → 18:35
So I'm curious what's your take on this?
18:36 → 18:40
So maybe let's start with distinguishing which growth we
18:40 → 18:41
are interested in.
18:41 → 18:44
So we know there's vertical growth and horizontal growth.
18:44 → 18:48
The vertical growth means that you take your service
18:48 → 18:53
and scale it in the line of business that you are in right now.
18:53 → 18:56
So the example could be for example Netflix, right?
18:56 → 18:59
They started as a streaming service but at one point they
18:59 → 19:02
entered the production business and started
19:02 → 19:04
creating their own content.
19:04 → 19:08
And horizontal growth on the other hand means that you scale
19:08 → 19:11
into different markets, new markets.
19:11 → 19:13
So another example for Netflix,
19:13 → 19:16
they started in few countries and then grew to one hundred
19:16 → 19:19
fifty countries I think in two thousand sixteen or something like that.
19:19 → 19:22
And the vertical growth is actually more traditional way
19:22 → 19:26
for startups to grow and we see it more often.
19:27 → 19:28
Okay.
19:29 → 19:30
From the project perspective,
19:31 → 19:35
I agree with Kuba and on the code you will see that if
19:35 → 19:39
it's about horizontal growth, will see that
19:39 → 19:42
system will support new users,
19:42 → 19:45
more more like higher amount of users,
19:46 → 19:47
as well as different currencies,
19:47 → 19:52
different languages, new time zones, maybe
19:52 → 19:57
maybe new regions that your application is available to download.
19:57 → 19:59
But if it's about vertical growth,
19:59 → 20:03
it's more of a new feature that you add to the system.
20:03 → 20:05
For example, new payment method that you support.
20:05 → 20:09
You pay for example, add Google Pay or different
20:09 → 20:14
different payment gateway that's that enables users to actually
20:15 → 20:19
attach new ways of paying your system.
20:19 → 20:23
So let's focus on the one that you've just discussed on
20:23 → 20:25
vertical growth.
20:25 → 20:29
So it's it's not really a rule that more features mean
20:29 → 20:31
more troubles.
20:32 → 20:33
However, it can be so,
20:33 → 20:36
especially from the usability standpoint.
20:36 → 20:40
Right? Why is that? What can go wrong with adding new features?
20:40 → 20:43
So, first of all, history knows
20:43 → 20:46
many apps and services that basically got out of hand in
20:46 → 20:49
terms of what is a good and healthy grow.
20:49 → 20:49
Right?
20:49 → 20:50
Yeah.
20:50 → 20:51
And we all know Facebook.
20:51 → 20:55
This is a great example of a service that started very simple.
20:55 → 20:58
The idea was to put new connections and help people with that.
20:58 → 21:01
Now it's this huge over complicated service that
21:01 → 21:04
actually people are avoiding right now,
21:04 → 21:06
trying to avoid at least.
21:06 → 21:09
This increase of product requirements
21:09 → 21:13
beyond original ones is known as feature creep.
21:13 → 21:17
And it's something that we see all over the place and we
21:17 → 21:21
see that it actually can be very expensive for the business.
21:21 → 21:26
And I love the Uber case study that they shared a couple years ago.
21:26 → 21:30
Basically, they start as a transport service
21:30 → 21:34
operating in growing sharing economy industry.
21:35 → 21:38
But at one point they grew to such extent that the
21:38 → 21:42
map that you use in the app as a main feature was barely
21:42 → 21:45
visible underneath the multitude of features and
21:45 → 21:47
additional informations.
21:47 → 21:51
And the management of Uber saw the risks of staying
21:51 → 21:55
that way and decided that it need to change.
21:55 → 21:59
Their design team come up with the new look based on a
21:59 → 22:03
custom design system that they created for the Uber brand.
22:03 → 22:06
And their development team as a result had to basically create
22:06 → 22:07
the whole product from scratch.
22:07 → 22:08
So
22:09 → 22:12
I imagine it wasn't It was quite stressful for them.
22:12 → 22:13
You must have.
22:13 → 22:13
But, yeah.
22:13 → 22:17
And I think that what we see right now in Uber is that they
22:17 → 22:18
still are growing.
22:18 → 22:18
Right?
22:18 → 22:22
They have introducing us the new features like package
22:22 → 22:24
delivery or food delivery.
22:24 → 22:25
Right?
22:25 → 22:28
But they scale right now in more controlled manner,
22:28 → 22:29
I think.
22:29 → 22:33
And the lesson from here is that you
22:33 → 22:36
should focus on some sort of simplicity and your core of
22:36 → 22:40
your business and be sure that every new feature that you
22:40 → 22:43
introduce to your users is absolutely necessary and that
22:43 → 22:47
there's a value for them and not just something that can
22:47 → 22:50
bring your revenue about one percent or something like that.
22:50 → 22:51
Right?
22:52 → 22:54
Users, like one one was fault.
22:54 → 22:56
Users, if they have a choice,
22:56 → 23:01
would go towards the apps that give you a better user experience.
23:01 → 23:04
And this is something that we see all over the market,
23:04 → 23:06
so bear that in mind.
23:06 → 23:07
Yeah.
23:07 → 23:10
So even if it seems quite counterintuitive, right,
23:10 → 23:12
because the stakeholders want to pack the app with Yeah.
23:12 → 23:15
More and more features, thinking that it will make them
23:15 → 23:18
more competitive and it actually may backfire.
23:18 → 23:19
Exactly.
23:19 → 23:20
Yeah.
23:20 → 23:23
How does it relate to to road map?
23:23 → 23:24
Because you mentioned it at the beginning,
23:24 → 23:28
and I suppose that you shouldn't really stick too close to it.
23:28 → 23:29
Right?
23:30 → 23:32
Technically, no.
23:32 → 23:35
Because the road map is just a prognosis of what can happen
23:35 → 23:39
or what your application will become eventually.
23:39 → 23:44
But it's so so attractive to drop a new feature so
23:44 → 23:46
that your users will enjoy it and then you will get more
23:46 → 23:48
users and revenue etcetera.
23:48 → 23:50
It's quite natural to think about it.
23:50 → 23:51
But
23:52 → 23:55
it's not so easy as as it looks as we talk right now
23:55 → 23:58
because developers or designers base a bunch of
23:58 → 24:00
things, a bunch of their assumptions,
24:00 → 24:02
like basing on that roadmap.
24:02 → 24:05
So even though it's not set in stone,
24:05 → 24:08
any kind of change will have cost.
24:08 → 24:10
So that means
24:11 → 24:13
whenever you develop as a software software engineer,
24:13 → 24:16
whenever you develop a certain part of the application,
24:16 → 24:19
you you need to find the balance.
24:19 → 24:22
Is this architect architecture or or should this
24:22 → 24:26
block be flexible enough for specific future growth or
24:26 → 24:29
should be quite minimal only for that specific purpose?
24:29 → 24:32
Like you have to find a middle middle ground for that so that
24:32 → 24:35
you won't exceed the development time.
24:35 → 24:38
And if a roadmap keeps changing,
24:39 → 24:41
which does which does change,
24:42 → 24:46
it brings additional cost but client or in this case product
24:46 → 24:51
owner should be very well aware of that additional cost that it will bring.
24:51 → 24:55
And it should it should it should be accepted as a as a
24:55 → 24:56
potential cost.
24:56 → 24:57
Yeah.
24:57 → 25:00
Like that's an essential thing to bear in mind With any
25:00 → 25:01
software project, I guess.
25:01 → 25:02
Yeah.
25:03 → 25:08
So I get the feeling that there are quite a few things that can go wrong.
25:08 → 25:11
For example, the thing that you mentioned that stakeholders are not that
25:11 → 25:14
flexible as we would like them to be.
25:14 → 25:17
So what can we do to ensure that our mobile application as
25:17 → 25:21
it grows is going in the right direction and that we are not
25:21 → 25:24
really gilding the lily with unnecessary features?
25:24 → 25:25
So
25:26 → 25:28
back to the user research.
25:28 → 25:29
Take
25:30 → 25:32
a closer look where are you at now,
25:32 → 25:36
what is the state of things, how people are,
25:36 → 25:38
how your users are seeing your product,
25:38 → 25:41
where is it right now and so on.
25:41 → 25:44
Do the research to find their habits, their needs,
25:44 → 25:47
and what they actually like in your app so that you don't
25:47 → 25:52
change it and you lose the core thing that actually keep them in your service.
25:52 → 25:53
Right?
25:53 → 25:57
Before you add any new feature, feature plan,
25:57 → 26:01
how and when you will test it with the users,
26:01 → 26:04
there are multiple of different research techniques like
26:05 → 26:07
surveys, field studies, focus groups.
26:07 → 26:12
So many to choose from that you can actually find one
26:12 → 26:14
that is more suitable for your needs, your budget,
26:14 → 26:16
for your timeline.
26:16 → 26:19
And if you can't go with
26:20 → 26:23
tests with users, go with the desk research instead.
26:23 → 26:27
So go through the industry reports and do your
26:27 → 26:29
competition analysis
26:30 → 26:33
and see what are the new mobile solutions.
26:33 → 26:37
All of those can give you a lot of insights to what to do next
26:37 → 26:41
and where to go with your product.
26:41 → 26:44
And when you gather all of this data,
26:45 → 26:50
work smart with it because prioritizing work into a
26:50 → 26:52
road map can be a daunting job.
26:52 → 26:56
And fortunately, there are multiple techniques,
26:56 → 27:01
including Moscow or EIC model that can help you to decide
27:01 → 27:04
on what you should focus on first.
27:05 → 27:08
Okay. Maybe I can also add a few things.
27:08 → 27:11
Like, even though this is a question for management
27:12 → 27:15
There are also a few things that developers may realize over time.
27:15 → 27:17
Like,
27:17 → 27:21
they may even tell you tell to the executives.
27:21 → 27:25
Like, if you start spending more time on per task in
27:25 → 27:27
order to achieve that task,
27:28 → 27:31
most likely you you are having some kind of a technical debt
27:31 → 27:33
and it's much harder for you to
27:34 → 27:37
produce a value with a given time.
27:37 → 27:39
Also, you will over time,
27:39 → 27:42
you will see that frequency of updates may may get lower,
27:42 → 27:44
may may reduce.
27:44 → 27:47
That also means that you are producing
27:47 → 27:50
less value over a given time.
27:51 → 27:54
Also, things can be picked up in regression tests
27:54 → 27:57
that in order to fix one problem,
27:57 → 28:01
you therefore break another thing in the system.
28:01 → 28:05
These things can be caught up in the in the regression tests.
28:05 → 28:09
Also, as a developer, stereotypical developer,
28:09 → 28:12
you will realize then the amount of coffee you drink per day.
28:12 → 28:16
I personally try to drink one cup of coffee every morning,
28:16 → 28:20
but sometimes it gets stressful and annoying that I switch
28:20 → 28:22
to two or three cups a day,
28:22 → 28:25
which is an indication for me that things are not going so well.
28:25 → 28:28
Yes, a normal amount. Okay.
28:30 → 28:32
The coffee. This brings me to performance.
28:32 → 28:36
I think that it's quite a nice transition.
28:36 → 28:40
So the issues with performance and stability can occur at any
28:40 → 28:41
stage of the product life cycle.
28:41 → 28:44
But if you are a scale up business,
28:44 → 28:48
then you have definitely much to lose.
28:48 → 28:50
Definitely more than if you are a start up.
28:50 → 28:53
So my question will be what performance issues are
28:53 → 28:57
most common during the mobile scale up phase?
28:57 → 29:00
And what do these stem from?
29:00 → 29:05
Maybe I'll start from backwards From the from the reasons.
29:05 → 29:10
As your project grows and becomes huge in terms
29:10 → 29:11
of, let's say,
29:12 → 29:16
description, that means there are too many things that can go wrong.
29:16 → 29:20
That means there are too many things to process and display to the user.
29:20 → 29:24
That exponentially increases the edge cases for you to deal with.
29:26 → 29:29
If especially if your system has payment methods and deals
29:29 → 29:31
with, let's say, different APIs,
29:31 → 29:33
different third party integrations,
29:33 → 29:35
a lot of things can go wrong.
29:36 → 29:39
Included with the lack of documentation,
29:39 → 29:42
because if you in a fast paced develop something,
29:42 → 29:45
you probably don't have much time to document documentate
29:45 → 29:49
everything that you do and system does in in this case.
29:51 → 29:53
That also can be
29:54 → 29:56
aggravated with additional dependencies.
29:56 → 29:59
The more dependency you have in the system,
29:59 → 30:04
less scalable it will get in my experience because then
30:04 → 30:08
as a whole scaling up as a whole with together with the
30:08 → 30:11
dependencies will be harder because all
30:11 → 30:15
dependencies, previous ones may not support certain behavior,
30:16 → 30:18
may not support certain I don't know.
30:18 → 30:22
Even regions, different different different
30:22 → 30:24
different specific cases.
30:24 → 30:26
Like a lot of things can go wrong.
30:26 → 30:28
So you have to like I said in the beginning,
30:28 → 30:31
you have to pay special care what you're including in the
30:31 → 30:35
system to make sure it's scalable enough and frequently
30:35 → 30:39
updated and actual.
30:39 → 30:42
And all these things are basically
30:43 → 30:46
like under the hood of rushed development.
30:46 → 30:49
So if you're rushing it, a lot of things are going wrong.
30:49 → 30:52
So with the time pressure you include a lot of bad practices.
30:52 → 30:54
A lot of people does it.
30:54 → 30:58
I'm I'm not gonna say that we all work quite meticulously.
30:58 → 31:00
If you're under pressure, you make mistakes.
31:00 → 31:02
Yeah. That's just the way it goes. Right?
31:02 → 31:03
Yeah. Exactly.
31:03 → 31:07
And all these things basically most commonly lead to
31:08 → 31:11
length lengthy contents that you your application basically
31:11 → 31:12
load each time.
31:12 → 31:16
That means starting an application takes much longer.
31:18 → 31:20
Things that you scroll easily in the previous update,
31:20 → 31:24
this time you wait one or two seconds in order for it to show
31:24 → 31:28
something or your application is taking much more resource,
31:28 → 31:32
much more disk space or consuming a lot of CPU power,
31:32 → 31:35
these things can happen because you process more data.
31:35 → 31:38
These are the most common things that I observe in the in
31:38 → 31:40
this kind of apps.
31:40 → 31:43
And then users get frustrated and there are more bad reviews
31:43 → 31:46
and It's like a spiral basically.
31:46 → 31:49
Yeah. And a never ending story about performance. Yeah.
31:49 → 31:53
So performance issues should not be left unattended.
31:53 → 31:54
Period.
31:55 → 31:59
But I guess there might be still some skeptics among our audience.
31:59 → 32:02
But I believe there is at least one thing that will convince
32:02 → 32:06
them it's worth taking care of the stability issues,
32:06 → 32:08
and that's money and hard data Yeah.
32:08 → 32:09
On its loss.
32:09 → 32:12
Yeah. So exactly.
32:12 → 32:16
So now we go to the usability actually.
32:16 → 32:19
Because the bad experience can damage your business a lot.
32:19 → 32:19
Right?
32:19 → 32:22
You can create an app that is able to handle even one million
32:22 → 32:25
users, but if you if you sacrifice the
32:25 → 32:28
experience, it won't be enough to to succeed.
32:28 → 32:29
Right?
32:29 → 32:33
Because it's very hard to get users in the mobile
32:33 → 32:36
industry and it's very easy to lose them altogether.
32:37 → 32:42
First of all, the competition is huge and like popular apps rise and fall
32:42 → 32:46
in a heartbeat and we just see one name that is very popular right now.
32:46 → 32:47
Tomorrow, everyone will forget about it.
32:47 → 32:53
And those statistics were were harsh, are harsh.
32:53 → 32:54
That's true.
32:54 → 32:58
Ninety nine percent of consumer apps actually fail on the market.
32:58 → 33:02
And I think only seven percent live longer than three months.
33:02 → 33:03
So
33:04 → 33:08
Basically, you need to be sure that you prioritize your
33:08 → 33:13
user and the quality to succeed in this hard environment.
33:13 → 33:17
And it's because users are basically unforgiving.
33:17 → 33:21
I think more than fifty percent claim that they won't give you
33:21 → 33:24
another chance if they meet with bad experience in your app.
33:24 → 33:29
So they remember the brand and they just won't trust you anymore.
33:29 → 33:32
So can't stress it enough, prioritize quality,
33:32 → 33:37
prioritize your users and make sure that you create something
33:37 → 33:40
that is important for them and works well.
33:40 → 33:42
So there will be no second chance in the mobile world?
33:42 → 33:43
Probably no.
33:44 → 33:45
Okay.
33:45 → 33:50
All these numbers sound may sound quite scary, I guess.
33:50 → 33:54
So what can we do to ensure that the performance and
33:54 → 33:56
stability issues
33:57 → 34:01
do not harm our mobile application as it grows.
34:01 → 34:05
I know that I already asked you about the things that we can do
34:05 → 34:08
at the launch stage when the app is still small,
34:08 → 34:12
but I guess there are some measures and steps that we can
34:12 → 34:14
take at the scale up stage as well.
34:14 → 34:16
So it starts with a good design, of course,
34:16 → 34:19
with major process during the design phase.
34:19 → 34:23
So if you create a design with performance and scalability in
34:23 → 34:26
mind, that means that you create not only the designs,
34:26 → 34:28
but also the good documentation for it.
34:28 → 34:31
So let's say you create a style guide, change log,
34:31 → 34:32
or even a design system.
34:32 → 34:36
Style guide is basically this living organism that you create
34:36 → 34:39
alongside the designs that contains all of the components
34:39 → 34:43
and atoms for little from little things like icons to
34:43 → 34:46
huge ones like layout tables and so on.
34:46 → 34:49
And that lets developers to stay consistent
34:49 → 34:53
to standardize code to make it tidy and quick to load.
34:53 → 34:54
Also
34:55 → 34:58
creating those repetitive components, optimizing styles
34:58 → 35:00
and using
35:01 → 35:05
native assets will let you to that will
35:05 → 35:08
positively influence your performance of the app.
35:08 → 35:10
And regarding the design system,
35:11 → 35:14
apart from having the guidelines for the visuals,
35:14 → 35:17
it also contains components libraries,
35:17 → 35:20
which is basically a reusable code for the developers.
35:20 → 35:23
So that also brings the app closer to
35:23 → 35:26
consistency and better performance.
35:26 → 35:29
That being said, and I think it's worth to mention here,
35:29 → 35:34
creating a custom design system for your app is a
35:34 → 35:37
quite expensive thing, but you don't have to do it.
35:37 → 35:38
Fortunately, almost never.
35:38 → 35:39
It's
35:39 → 35:41
For the bigger players.
35:41 → 35:46
And there are multitude of multiple of open source solutions.
35:46 → 35:49
For example, material design, is based on Flutter libraries.
35:49 → 35:54
So you don't have to spend a lot of money to basically stay consistent.
35:54 → 35:56
That's definitely good news. Yeah. Okay.
35:56 → 35:58
What about the code?
35:58 → 36:01
Of course, there are a lot of stuff that you can do.
36:02 → 36:06
But I I think I will start with with our cooperation with the
36:06 → 36:07
product design team.
36:07 → 36:09
At the beginning of each project,
36:09 → 36:11
we heavily cooperate together because this is the moment we
36:11 → 36:14
create meaningful user flows.
36:14 → 36:17
And that is because
36:18 → 36:23
we are developers and we are living in our specific specific ways.
36:23 → 36:26
So usually we tend to miss how
36:26 → 36:28
things should work.
36:28 → 36:31
So cooperating with the product design team,
36:31 → 36:34
cooperating with the UX designer will help us seeing
36:34 → 36:39
the big picture how a regular user would expect things to work for us.
36:39 → 36:41
Also,
36:41 → 36:44
for us having a consistent design,
36:45 → 36:49
a very well crafted design is really helpful because as an
36:49 → 36:53
end result we also create reusable components, consistent
36:54 → 36:57
and visuals in the application.
36:57 → 37:01
So it's a better performing app and it's much easier for
37:01 → 37:05
user to use this app, have a better user experience.
37:06 → 37:10
There are are also some processes that actually helps
37:10 → 37:11
developers,
37:11 → 37:16
therefore indirectly affects the performance of your of your application.
37:16 → 37:17
For example,
37:17 → 37:21
traditional thing, giving a regular code review for
37:21 → 37:26
whatever you are adding into the application.
37:27 → 37:32
Or peer programming sessions or giving your developer some
37:32 → 37:35
coding guidelines, like having them
37:35 → 37:39
somehow more homogeneous experience
37:39 → 37:43
with the coding, with the project that they are preparing.
37:44 → 37:48
Also clear acceptance criteria that doesn't
37:48 → 37:53
let your developers to go wild with their decisions.
37:53 → 37:55
So this is also important.
37:56 → 38:00
Also, think some amount of time dedicated for refactoring the
38:00 → 38:04
existing system will also help your product to
38:04 → 38:06
become better over time.
38:06 → 38:07
Because
38:08 → 38:11
it's it's it's the case that I keep seeing.
38:11 → 38:15
Developers see some mistakes and that's getting ignored.
38:15 → 38:20
Like, because there is no time to basically go and fix that.
38:20 → 38:23
But if you provide them this time,
38:23 → 38:27
this small slot that they can just go and fix that,
38:27 → 38:31
they are more than more than happy to basically go ahead and do it.
38:31 → 38:34
So I find it quite useful.
38:34 → 38:37
Because leaving it as it is will have its consequences.
38:38 → 38:38
Yes.
38:38 → 38:43
And it's basically not visible until you address it.
38:43 → 38:47
So giving it time or at least creating a ticket in the
38:47 → 38:50
backlog for that will will definitely help.
38:50 → 38:53
So that sounds like the reasonable
38:53 → 38:55
best practices to follow.
38:55 → 38:56
It's pretty universal,
38:56 → 38:59
but it will work in the mobile scalar project.
38:59 → 39:00
I think so. Yeah.
39:00 → 39:02
Okay.
39:02 → 39:04
And now that you mentioned processes,
39:04 → 39:08
I think we are ready to move on to the last topic.
39:08 → 39:12
That's the mindset and team related things.
39:13 → 39:15
So as you said at the beginning,
39:15 → 39:18
there are some tales of success that we've all heard of,
39:18 → 39:22
but there are just as many or I think even many more of
39:22 → 39:26
businesses that failed during the scale up stage for whatever reasons.
39:27 → 39:31
And how can we ensure that our organization is not one of them
39:31 → 39:35
and that we are actually ready to scale our mobile product?
39:35 → 39:40
So I would say that this product mindset is a must.
39:40 → 39:43
So what you want to do is to focus
39:43 → 39:47
on the business and end product instead of temporary
39:47 → 39:48
challenges and milestones.
39:48 → 39:54
So thinking more in terms of outcomes instead of the outputs.
39:54 → 39:58
So measure those with metrics like retention and user
39:58 → 40:00
adoption and now with, I don't know,
40:00 → 40:05
trends and things that you think are cool to code with.
40:05 → 40:07
I'm sure I did understand that.
40:07 → 40:11
So that's the idea is to have the team like business
40:11 → 40:14
design, development, infrastructure, QA, all of
40:14 → 40:17
those to work as a one team from day one.
40:17 → 40:20
So that they create the experience and the product
40:20 → 40:23
together with their knowledge and
40:23 → 40:24
experience.
40:24 → 40:28
And the decisions you made should be you make should be
40:28 → 40:32
should be driven by the users and the business and that's the
40:32 → 40:34
core of the mindset I think.
40:35 → 40:38
When it comes to product based approach,
40:38 → 40:41
I I think it's also important, like I mentioned earlier,
40:41 → 40:43
having a mobile strategy.
40:43 → 40:47
Either mobile first or mobile early because that will lead
40:47 → 40:50
you to tackle certain specific problems that's
40:50 → 40:54
only for mobile applications early on so that you
40:54 → 40:58
won't postpone some some potential issues that will
40:58 → 41:01
prevent your application or project from scaling up.
41:02 → 41:02
Okay.
41:02 → 41:08
And Kuba, you actually mentioned all members of the team working hand in hand.
41:08 → 41:10
And we shouldn't forget really
41:10 → 41:14
about these people behind the project and the processes.
41:14 → 41:17
What skills, speaking from your own experience,
41:17 → 41:21
should they possess to make a mobile scale up project a success?
41:21 → 41:23
Maybe we could start with designers.
41:23 → 41:23
Sure.
41:23 → 41:26
So for sure you should look for
41:26 → 41:29
people that are experienced in creating mobile experience in
41:29 → 41:34
particular, that know the common mobile patterns,
41:34 → 41:36
that understands the characteristics of Android and
41:36 → 41:39
iOS, and also the characteristics of the
41:39 → 41:43
smartphones, their possibilities and limitations.
41:43 → 41:47
I think people like that will work a little bit faster and more efficient.
41:47 → 41:51
To addition to that, you should look for people that have this
41:51 → 41:56
user centric attitude, that are creative and focused on problem solving.
41:56 → 41:58
People that are definitely product oriented,
41:58 → 42:02
as we mentioned, and that also requires from them high skills
42:02 → 42:04
in teamwork.
42:05 → 42:06
And last but not the least,
42:06 → 42:09
I would look for people that are good with documentation of
42:09 → 42:12
their work, that work well with style guides, design systems,
42:12 → 42:16
that create change logs, that prepare working
42:16 → 42:20
files as tidy as possible so that you can go back to them
42:20 → 42:22
and reuse them if you need to.
42:23 → 42:25
Basically, you need to find people that not only create pretty things,
42:25 → 42:27
but also things that work.
42:27 → 42:30
Yeah. Sounds reasonable. Yeah.
42:30 → 42:32
And what about mobile developers?
42:32 → 42:34
There are a bunch of technical things that
42:35 → 42:37
probably they will be quite different for different
42:37 → 42:40
technologies that company is working on.
42:40 → 42:42
But I would like to talk about few, like,
42:42 → 42:46
gentler things in this case that you can look for in a in a
42:46 → 42:48
good developer, like,
42:49 → 42:53
of course, the capability or capacity to tackling difficult problems.
42:53 → 42:57
That's I think the base of being a developer.
42:59 → 43:02
Having or at at least practicing everyday these
43:02 → 43:06
main principles, solid principles, dry or keeping
43:06 → 43:09
thing keeping things stupidly simple in this case.
43:10 → 43:15
I can also recommend developers to swallow five books about
43:16 → 43:17
design patterns.
43:17 → 43:22
It might help in their later career.
43:22 → 43:25
And I I think it's it's also important if a if a developer
43:25 → 43:30
cares about test coverage Which which eventually saves
43:30 → 43:32
bunch of headache over over longer periods
43:32 → 43:36
of working in the same project.
43:37 → 43:37
What else?
43:37 → 43:41
I I think there are also some sort of soft skills that that's
43:41 → 43:43
soft or additional things to that,
43:43 → 43:48
like communicating clearly and openly talking about the facts,
43:48 → 43:50
not like emotions.
43:50 → 43:53
I'm not saying emotion doesn't have a space in that place,
43:53 → 43:57
but if if you talk about the product then you have to talk
43:57 → 43:59
about the facts and objective things.
44:00 → 44:02
Knowledge of the platform.
44:02 → 44:05
So if you are a cross platform mobile developer,
44:05 → 44:09
then you have to have the knowledge of knowing iOS,
44:09 → 44:12
Android, or other things that you may
44:12 → 44:15
potentially develop on, like native,
44:15 → 44:17
how things natively work.
44:17 → 44:21
Because eventually you may need to integrate or at least
44:21 → 44:23
develop something in the native,
44:23 → 44:25
not like all the time in the cross platform.
44:25 → 44:27
And for mobile developers,
44:27 → 44:30
it's also important about of this design systems.
44:30 → 44:34
Either it's material design or it's Apple human interface.
44:34 → 44:37
Knowing those things is going to help as well as knowledge of
44:37 → 44:42
design tools like Figma most often used.
44:42 → 44:45
Because if you're cooperating with the designer,
44:45 → 44:50
product design team, they I'm guessing that most of
44:50 → 44:53
the time they are just sending a Figma file just to or at
44:53 → 44:55
least sharing it.
44:55 → 44:57
Correct me if I'm wrong.
44:57 → 44:57
They do share it.
44:57 → 44:58
Yeah. They do share it.
44:58 → 44:59
So
45:00 → 45:04
ability to use this kind of tools without the need of help
45:04 → 45:08
will definitely definitely make their life easier.
45:09 → 45:12
Care the developer also should care
45:12 → 45:16
about the adaptiveness because we talked about platforms and how they work.
45:16 → 45:17
Knowledge about it is important,
45:17 → 45:22
but caring about adaptiveness is also important because that
45:22 → 45:25
means you are also caring about providing a native like or at
45:25 → 45:29
least high quality perform experience for your users.
45:31 → 45:34
And additionally, I think this is the last one.
45:34 → 45:36
They should be open for new challenges,
45:36 → 45:38
not like stay in their own shell and just
45:38 → 45:41
don't leave the comfort zone.
45:41 → 45:44
It's also it's also something for a plus.
45:44 → 45:44
Okay.
45:44 → 45:47
So it sounds like it's all about cooperation You know?
45:47 → 45:48
Yeah.
45:48 → 45:48
Yeah.
45:48 → 45:52
Just trying to make each other's It's not working in silos.
45:52 → 45:53
Never.
45:53 → 45:54
Yeah.
45:55 → 45:59
I mean, I think it would be great if
45:59 → 46:02
all the clients who are building mobile applications
46:02 → 46:07
were able to to hire great talent that you've just talked about.
46:07 → 46:10
But sometimes it's not possible for whatever reasons.
46:10 → 46:12
It can be the time restrictions,
46:12 → 46:15
the budget limitations, it doesn't really matter.
46:15 → 46:20
What I'm driving at is that in this case you need to outsource.
46:20 → 46:22
And it can go both ways actually.
46:22 → 46:26
And the trick to do good outsourcing is I
46:26 → 46:30
believe finding a good reliable tech partner.
46:30 → 46:31
Speaking from your own experience,
46:31 → 46:35
what would you say makes a perfect tech partner for a
46:35 → 46:37
mobile scale up project?
46:37 → 46:41
I think you should look for a company that has mature,
46:41 → 46:45
well tested processes, that are flexible enough and
46:45 → 46:49
that you can or the company you find will tailor them to your
46:49 → 46:54
needs, but never at the cost of under delivering, right?
46:54 → 46:58
Good development process is a key for working in scale up,
46:58 → 47:01
for scale up projects and scale up environment,
47:01 → 47:05
especially if you have if you started with something that was
47:05 → 47:06
maybe not perfect.
47:06 → 47:06
Right?
47:06 → 47:08
And here at Merixstudio,
47:08 → 47:11
we believe that one of the most important stages is discovery
47:11 → 47:15
stage, which is a key to productive productive deep dive
47:15 → 47:19
into the project, the client's needs, the vision and so on.
47:20 → 47:20
Yeah.
47:21 → 47:22
Okay.
47:22 → 47:25
I actually talked about processes a couple of questions ago.
47:25 → 47:28
And I believe a product success is not about
47:28 → 47:32
individual talents or very good single
47:32 → 47:34
developer that does all.
47:34 → 47:38
It's more about how your development team or how
47:38 → 47:41
your development partner is basically
47:42 → 47:45
making providing you with the whole whole development
47:45 → 47:47
process, basically.
47:48 → 47:51
Speaking from my own experience,
47:51 → 47:55
solid development process is about is also is about
47:55 → 47:58
cooperating with the client as well as taking responsibilities
47:58 → 48:00
of the project.
48:01 → 48:05
But this also doesn't mean that product just we develop product
48:05 → 48:11
in our own way without with by ignoring what client is needing.
48:12 → 48:16
But it's it's also about how we focus on development,
48:16 → 48:19
how we manage the risk in the development,
48:19 → 48:22
how do we ensure the quality quality basically with
48:22 → 48:25
our QA processes.
48:25 → 48:30
It's like a whole whole thing circling around
48:30 → 48:34
development team, product design team that that a good
48:34 → 48:37
reliable development partner would provide you in this case?
48:37 → 48:41
So there is also a subject of the form of the cooperation.
48:41 → 48:45
You can go with dedicated team or with the team augmentation model.
48:45 → 48:49
If you decide to hire a dedicated team for a software
48:49 → 48:52
house like from, for example, from Marix Studio, right?
48:52 → 48:55
It's basically creating this remote department
48:55 → 48:59
that is built from a blend of qualified professionals from
48:59 → 49:00
different fields.
49:00 → 49:03
And what you can rely on what what you can
49:04 → 49:07
count on is that they are focused on your product,
49:07 → 49:08
are focused on the problem,
49:08 → 49:10
technical choices and the scope of the product.
49:10 → 49:13
And they can also take a lot of ownership for the decisions
49:13 → 49:16
they made which basically means that you will have this
49:16 → 49:19
dedicated team that works well together.
49:19 → 49:21
They have the experience to work together.
49:21 → 49:24
That's also something that is an advantage of hiring a
49:24 → 49:25
dedicated team from one company.
49:25 → 49:29
The other model would be a team augmentation which basically
49:29 → 49:30
allows you to
49:31 → 49:35
add talented people and add
49:35 → 49:37
them to your in house team to work faster,
49:37 → 49:40
to work better or to work in technologies that you can't
49:40 → 49:41
cover with your own team.
49:41 → 49:42
Right?
49:42 → 49:44
The thing that is more the most
49:44 → 49:47
important regardless the model you will
49:47 → 49:49
choose is to find a tech partner,
49:49 → 49:51
tech partner that will be reliable,
49:51 → 49:54
that will have the ability to advise you and guide you
49:54 → 49:55
through the whole process.
49:56 → 49:58
And that's how we do it here in my studio.
49:59 → 50:03
Our teams are engaged, present, are motivated,
50:03 → 50:06
and this is something that pays off for our clients.
50:06 → 50:09
And I feel that one thing that we could add to the list of
50:09 → 50:14
qualities that you just gave us is transparency in
50:14 → 50:16
communication and processes.
50:16 → 50:16
How about that?
50:16 → 50:18
From the development team's perspective,
50:18 → 50:22
it's transparency is one of the crucial things because
50:22 → 50:25
daily basis we are almost daily basis, let's say,
50:25 → 50:27
we are contacting
50:27 → 50:28
client.
50:28 → 50:33
We are including him in in our process of development.
50:33 → 50:34
So any kind of risk,
50:34 → 50:38
any kind of potential problems that application may face in
50:38 → 50:42
the future is directly directly conducted,
50:42 → 50:44
directly basically reported to the client.
50:44 → 50:48
So additional measures can be taken in this case.
50:48 → 50:51
And I see a huge benefit in that because
50:52 → 50:57
everything is clear and you don't really
50:57 → 51:02
put additional pressure to hide or or basically ignore
51:02 → 51:03
certain things.
51:03 → 51:07
And we that means we are taking the ownership of the project
51:07 → 51:08
product and then
51:09 → 51:14
doing our best to give as realist as realistic
51:14 → 51:16
feedback or as realistic
51:17 → 51:20
screen display of the of the current status as possible with
51:20 → 51:22
the with the development.
51:22 → 51:25
So I believe that we are slowly heading towards the end of this
51:25 → 51:29
webinar, but I will have one more question to you guys.
51:29 → 51:33
So imagine our audience can remember only two things from
51:33 → 51:35
this entire hour of us talking.
51:35 → 51:38
What would you like them to remember?
51:38 → 51:42
Two things from the design and two things from the mobile
51:42 → 51:45
development domain.
51:46 → 51:48
So from the design perspective,
51:48 → 51:51
I would say those two takeaways would be
51:51 → 51:55
first, don't forget about your users.
51:55 → 51:57
You think you know everything,
51:57 → 52:00
you think you know what is the best for your app,
52:00 → 52:04
but the truth is that what you should focus is what your users
52:04 → 52:07
needs, what they know and what they want.
52:07 → 52:10
So don't be afraid to listen to them,
52:10 → 52:12
to use your analytical tools,
52:12 → 52:15
to conduct research surveys, things like that,
52:15 → 52:21
and ask them what they need and make your decisions based on that.
52:21 → 52:25
And the second thing would be design with the scalability
52:25 → 52:28
as a principle for the designers.
52:29 → 52:33
Well thought out design will be based on good practices, common patterns,
52:33 → 52:37
native solutions And all of this will help you in the
52:37 → 52:40
future when you will scale up, basically.
52:40 → 52:42
And how about the development?
52:42 → 52:44
Actually, wanted to talk about the same thing.
52:44 → 52:48
Scalability mindset is quite crucial for developers.
52:48 → 52:53
So have a scalability mindset whenever you develop things.
52:53 → 52:58
And second of all would be be open and don't hesitate
52:58 → 52:59
taking initiative.
53:01 → 53:05
That also includes talking about issues and risks in the project.
53:05 → 53:08
And this is the reason is that you
53:08 → 53:11
are the one that actually does all these things and you you
53:11 → 53:13
know what's going on internally.
53:13 → 53:14
So
53:14 → 53:18
make sure you you don't just put everything under the
53:18 → 53:22
carpet, but openly talk about it and don't don't
53:22 → 53:25
hesitate being more, how to say,
53:25 → 53:28
open for new challenges.
53:28 → 53:32
So these are great tips. And I believe we have a wrap. Right?
53:32 → 53:35
Thank you very much, guys,
53:35 → 53:38
for talking us through the challenges of mobile scale up
53:38 → 53:41
and for accepting my invitation to to this webinar.
53:42 → 53:46
Thank you to our audience for sticking with us.
53:46 → 53:50
If you have any questions about mobile development in general
53:50 → 53:52
or perhaps Mobile Scale Up,
53:52 → 53:56
don't hesitate to reach out to us via email or via LinkedIn.
53:56 → 53:59
We'll be happy to answer your questions.
53:59 → 54:02
Also don't forget to check out more of our mobile development
54:02 → 54:03
related content.
54:03 → 54:08
We have plenty of articles and videos about that on
54:08 → 54:10
our Merixstudio Insights.
54:10 → 54:12
And I guess, see you next time.



.avif)

.avif)
.avif)
.avif)