Is native mobile development a dead end job?
I am a developer with 4 years of experience (native Android development, java, kotlin). I come to the conclusion that native mobile development is kind of a dead end. Why?
- In 2015-2016 I worked at the company A, a company targeting and crafting only native mobile apps. The apps were pretty easy to produce and deadlines were short. We had one app per developer (and I love developing all by my own). The management staff just used to attract as much projects as they can, no matter the quality of the project. And the development staff just had to develop as quick as possible.. Often projects had missing or wrong, undiscussed concepts because the client was not aware of what he wants.
Almost all of that apps were based around a server, API calls, displaying content, filling forms, design and ux. All of this stuff can be achieved in a javascript / html5 app (Progressive Web App, React, ReactNative, ionic, cordova .. you name it). All of the apps didn't need specific hardware or software requirements, otherwise inaccessible in js. I don't like js, I love statically-typed compiled languages like c#, java and kotlin.. but, from an economical point of view, why on earth should we build a native app to just call APIs instead of building a cross platform web app?
The only two apps from the hundreds of hit-and-run projects the company A had, was two utility apps: a SMS client and a keyboard, both for android. Now, I think that android has a nice highly customizable ecosystem. You can create all kind of system utilities (lanuncher, sms client, keyboard) or productivity utilities. Android apps can use software or hardware inaccesible from the web (unless you use ReactNative). But the percent of those apps is very, very low. Most apps just calls APIs and cache data.. we can also do that in js.
In 2016-2017 I worked for company B. Pretty much the same status as company A.
In 2017-present, I worked for company C with thr client D. D has a big local business, developed across the country in 10 years. C provides D with a web platform, used by D's employees to record all the stuff they do at work. The system is very complex, the business logic is very well structured and the client knows exactly what he want. He needed 3 big, very complex android apps for his clients and for his employees. The development process took me 1.5 years to complete (I worked all by my own on the apps, except the backend). Now, he is kind of a perfect client to me, knows what he want and I will have, for a long time, feedback, new features, bugfixes and updates to work on. But the apps are all based around APIs. Some of them have local DB, can cache data offline and then sync data with the server later. The percentage of features impossible for a web app is like.. 5%...
But the problem is not here. They promised me we will attract more apps, we will form a team and I will be the leader. But the new apps never came. Each time I talk to the manager responsible for business development, I get the same answer: yeah, we have lot of pending apps. But he lies to me, the reality is different. He can find apps, but the client almost always want a Progressive Web App, or ReactNative, or whatever. There are 3 new apps, all requested to be js-based. And I don't blame the clients, I totally get them. As those apps for client D are finished, but in continuous development, I will have more and more spare time in the workplace, just waiting for the projects to come.. And I am afraid that the business manager will fail to provide new native mobile apps, or if he will find apps, they will be low quality apps like those from companies A and B.
On job finding sites, there always was an extremely low quantity of native mobile app offers (like 5-6 or so) compared to web dev (hundreds of offers)
Yet another aspect. In 2016 I published an open source android library. The library became quite popular. At the end of 2018, I published 5 libraries I developed over time and used in my projects. The libraries are slim but not trivial, boilerplate code reduction tools, architecture, design patterns and algorithms. Still, I got under 10 stars per each library in github, only from indian developers and students.. There is something wrong here.. The Android platform is as mature as it can be, with kotlin as first language support, highly stable backward and forward compatibility, lot of community libraries.. And I love it but...
I think it is over. What do you think?
The good part is that, in all those years I developed native apps by my own, I learned a lot about software architecture, good practices etc. Those are highly valuable transferable skills. I think I will switch to big data development.
career-development software-development
New contributor
add a comment |
I am a developer with 4 years of experience (native Android development, java, kotlin). I come to the conclusion that native mobile development is kind of a dead end. Why?
- In 2015-2016 I worked at the company A, a company targeting and crafting only native mobile apps. The apps were pretty easy to produce and deadlines were short. We had one app per developer (and I love developing all by my own). The management staff just used to attract as much projects as they can, no matter the quality of the project. And the development staff just had to develop as quick as possible.. Often projects had missing or wrong, undiscussed concepts because the client was not aware of what he wants.
Almost all of that apps were based around a server, API calls, displaying content, filling forms, design and ux. All of this stuff can be achieved in a javascript / html5 app (Progressive Web App, React, ReactNative, ionic, cordova .. you name it). All of the apps didn't need specific hardware or software requirements, otherwise inaccessible in js. I don't like js, I love statically-typed compiled languages like c#, java and kotlin.. but, from an economical point of view, why on earth should we build a native app to just call APIs instead of building a cross platform web app?
The only two apps from the hundreds of hit-and-run projects the company A had, was two utility apps: a SMS client and a keyboard, both for android. Now, I think that android has a nice highly customizable ecosystem. You can create all kind of system utilities (lanuncher, sms client, keyboard) or productivity utilities. Android apps can use software or hardware inaccesible from the web (unless you use ReactNative). But the percent of those apps is very, very low. Most apps just calls APIs and cache data.. we can also do that in js.
In 2016-2017 I worked for company B. Pretty much the same status as company A.
In 2017-present, I worked for company C with thr client D. D has a big local business, developed across the country in 10 years. C provides D with a web platform, used by D's employees to record all the stuff they do at work. The system is very complex, the business logic is very well structured and the client knows exactly what he want. He needed 3 big, very complex android apps for his clients and for his employees. The development process took me 1.5 years to complete (I worked all by my own on the apps, except the backend). Now, he is kind of a perfect client to me, knows what he want and I will have, for a long time, feedback, new features, bugfixes and updates to work on. But the apps are all based around APIs. Some of them have local DB, can cache data offline and then sync data with the server later. The percentage of features impossible for a web app is like.. 5%...
But the problem is not here. They promised me we will attract more apps, we will form a team and I will be the leader. But the new apps never came. Each time I talk to the manager responsible for business development, I get the same answer: yeah, we have lot of pending apps. But he lies to me, the reality is different. He can find apps, but the client almost always want a Progressive Web App, or ReactNative, or whatever. There are 3 new apps, all requested to be js-based. And I don't blame the clients, I totally get them. As those apps for client D are finished, but in continuous development, I will have more and more spare time in the workplace, just waiting for the projects to come.. And I am afraid that the business manager will fail to provide new native mobile apps, or if he will find apps, they will be low quality apps like those from companies A and B.
On job finding sites, there always was an extremely low quantity of native mobile app offers (like 5-6 or so) compared to web dev (hundreds of offers)
Yet another aspect. In 2016 I published an open source android library. The library became quite popular. At the end of 2018, I published 5 libraries I developed over time and used in my projects. The libraries are slim but not trivial, boilerplate code reduction tools, architecture, design patterns and algorithms. Still, I got under 10 stars per each library in github, only from indian developers and students.. There is something wrong here.. The Android platform is as mature as it can be, with kotlin as first language support, highly stable backward and forward compatibility, lot of community libraries.. And I love it but...
I think it is over. What do you think?
The good part is that, in all those years I developed native apps by my own, I learned a lot about software architecture, good practices etc. Those are highly valuable transferable skills. I think I will switch to big data development.
career-development software-development
New contributor
add a comment |
I am a developer with 4 years of experience (native Android development, java, kotlin). I come to the conclusion that native mobile development is kind of a dead end. Why?
- In 2015-2016 I worked at the company A, a company targeting and crafting only native mobile apps. The apps were pretty easy to produce and deadlines were short. We had one app per developer (and I love developing all by my own). The management staff just used to attract as much projects as they can, no matter the quality of the project. And the development staff just had to develop as quick as possible.. Often projects had missing or wrong, undiscussed concepts because the client was not aware of what he wants.
Almost all of that apps were based around a server, API calls, displaying content, filling forms, design and ux. All of this stuff can be achieved in a javascript / html5 app (Progressive Web App, React, ReactNative, ionic, cordova .. you name it). All of the apps didn't need specific hardware or software requirements, otherwise inaccessible in js. I don't like js, I love statically-typed compiled languages like c#, java and kotlin.. but, from an economical point of view, why on earth should we build a native app to just call APIs instead of building a cross platform web app?
The only two apps from the hundreds of hit-and-run projects the company A had, was two utility apps: a SMS client and a keyboard, both for android. Now, I think that android has a nice highly customizable ecosystem. You can create all kind of system utilities (lanuncher, sms client, keyboard) or productivity utilities. Android apps can use software or hardware inaccesible from the web (unless you use ReactNative). But the percent of those apps is very, very low. Most apps just calls APIs and cache data.. we can also do that in js.
In 2016-2017 I worked for company B. Pretty much the same status as company A.
In 2017-present, I worked for company C with thr client D. D has a big local business, developed across the country in 10 years. C provides D with a web platform, used by D's employees to record all the stuff they do at work. The system is very complex, the business logic is very well structured and the client knows exactly what he want. He needed 3 big, very complex android apps for his clients and for his employees. The development process took me 1.5 years to complete (I worked all by my own on the apps, except the backend). Now, he is kind of a perfect client to me, knows what he want and I will have, for a long time, feedback, new features, bugfixes and updates to work on. But the apps are all based around APIs. Some of them have local DB, can cache data offline and then sync data with the server later. The percentage of features impossible for a web app is like.. 5%...
But the problem is not here. They promised me we will attract more apps, we will form a team and I will be the leader. But the new apps never came. Each time I talk to the manager responsible for business development, I get the same answer: yeah, we have lot of pending apps. But he lies to me, the reality is different. He can find apps, but the client almost always want a Progressive Web App, or ReactNative, or whatever. There are 3 new apps, all requested to be js-based. And I don't blame the clients, I totally get them. As those apps for client D are finished, but in continuous development, I will have more and more spare time in the workplace, just waiting for the projects to come.. And I am afraid that the business manager will fail to provide new native mobile apps, or if he will find apps, they will be low quality apps like those from companies A and B.
On job finding sites, there always was an extremely low quantity of native mobile app offers (like 5-6 or so) compared to web dev (hundreds of offers)
Yet another aspect. In 2016 I published an open source android library. The library became quite popular. At the end of 2018, I published 5 libraries I developed over time and used in my projects. The libraries are slim but not trivial, boilerplate code reduction tools, architecture, design patterns and algorithms. Still, I got under 10 stars per each library in github, only from indian developers and students.. There is something wrong here.. The Android platform is as mature as it can be, with kotlin as first language support, highly stable backward and forward compatibility, lot of community libraries.. And I love it but...
I think it is over. What do you think?
The good part is that, in all those years I developed native apps by my own, I learned a lot about software architecture, good practices etc. Those are highly valuable transferable skills. I think I will switch to big data development.
career-development software-development
New contributor
I am a developer with 4 years of experience (native Android development, java, kotlin). I come to the conclusion that native mobile development is kind of a dead end. Why?
- In 2015-2016 I worked at the company A, a company targeting and crafting only native mobile apps. The apps were pretty easy to produce and deadlines were short. We had one app per developer (and I love developing all by my own). The management staff just used to attract as much projects as they can, no matter the quality of the project. And the development staff just had to develop as quick as possible.. Often projects had missing or wrong, undiscussed concepts because the client was not aware of what he wants.
Almost all of that apps were based around a server, API calls, displaying content, filling forms, design and ux. All of this stuff can be achieved in a javascript / html5 app (Progressive Web App, React, ReactNative, ionic, cordova .. you name it). All of the apps didn't need specific hardware or software requirements, otherwise inaccessible in js. I don't like js, I love statically-typed compiled languages like c#, java and kotlin.. but, from an economical point of view, why on earth should we build a native app to just call APIs instead of building a cross platform web app?
The only two apps from the hundreds of hit-and-run projects the company A had, was two utility apps: a SMS client and a keyboard, both for android. Now, I think that android has a nice highly customizable ecosystem. You can create all kind of system utilities (lanuncher, sms client, keyboard) or productivity utilities. Android apps can use software or hardware inaccesible from the web (unless you use ReactNative). But the percent of those apps is very, very low. Most apps just calls APIs and cache data.. we can also do that in js.
In 2016-2017 I worked for company B. Pretty much the same status as company A.
In 2017-present, I worked for company C with thr client D. D has a big local business, developed across the country in 10 years. C provides D with a web platform, used by D's employees to record all the stuff they do at work. The system is very complex, the business logic is very well structured and the client knows exactly what he want. He needed 3 big, very complex android apps for his clients and for his employees. The development process took me 1.5 years to complete (I worked all by my own on the apps, except the backend). Now, he is kind of a perfect client to me, knows what he want and I will have, for a long time, feedback, new features, bugfixes and updates to work on. But the apps are all based around APIs. Some of them have local DB, can cache data offline and then sync data with the server later. The percentage of features impossible for a web app is like.. 5%...
But the problem is not here. They promised me we will attract more apps, we will form a team and I will be the leader. But the new apps never came. Each time I talk to the manager responsible for business development, I get the same answer: yeah, we have lot of pending apps. But he lies to me, the reality is different. He can find apps, but the client almost always want a Progressive Web App, or ReactNative, or whatever. There are 3 new apps, all requested to be js-based. And I don't blame the clients, I totally get them. As those apps for client D are finished, but in continuous development, I will have more and more spare time in the workplace, just waiting for the projects to come.. And I am afraid that the business manager will fail to provide new native mobile apps, or if he will find apps, they will be low quality apps like those from companies A and B.
On job finding sites, there always was an extremely low quantity of native mobile app offers (like 5-6 or so) compared to web dev (hundreds of offers)
Yet another aspect. In 2016 I published an open source android library. The library became quite popular. At the end of 2018, I published 5 libraries I developed over time and used in my projects. The libraries are slim but not trivial, boilerplate code reduction tools, architecture, design patterns and algorithms. Still, I got under 10 stars per each library in github, only from indian developers and students.. There is something wrong here.. The Android platform is as mature as it can be, with kotlin as first language support, highly stable backward and forward compatibility, lot of community libraries.. And I love it but...
I think it is over. What do you think?
The good part is that, in all those years I developed native apps by my own, I learned a lot about software architecture, good practices etc. Those are highly valuable transferable skills. I think I will switch to big data development.
career-development software-development
career-development software-development
New contributor
New contributor
New contributor
asked 3 mins ago
user1658358user1658358
1
1
New contributor
New contributor
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "423"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
user1658358 is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fworkplace.stackexchange.com%2fquestions%2f129282%2fis-native-mobile-development-a-dead-end-job%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
user1658358 is a new contributor. Be nice, and check out our Code of Conduct.
user1658358 is a new contributor. Be nice, and check out our Code of Conduct.
user1658358 is a new contributor. Be nice, and check out our Code of Conduct.
user1658358 is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to The Workplace Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fworkplace.stackexchange.com%2fquestions%2f129282%2fis-native-mobile-development-a-dead-end-job%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown