Akarsh Seggemu in
Mobile Software Engineer
Switching roles from Software Development Kit Engineer - iOS, Android to Application Development Engineer in iOS/Android
Context
I have experience developing SDKs (software development kit) for two SaaS companies 4 years. I'm considering to switch to Application Development Engineer position in iOS/Android as I don't have companies in Berlin, Germany or Remote, Germany that are hiring SDK Engineers.
Questions
- Any advise on if I need to focus or iOS/Android?
- How is the growth as an Application Development Engineer?
- Should I focus on Flutter in the mean time?
![](/images/reactions/icon-reaction-thumbs-up.png)
6
5144
Sort by:
adorableFounder
Sdk to app dev.
I'd imagine it'll be like switching from creating your for artists to using them to create art... You'd be familiar with the tools, just need to figure out how to create the art - apps with the tools.
Every app uses a different set of skills and dev know how, and every company varies on what you'll need to know.
Obviously, the basics - xcode and android studio.
Then a language for each - e.g. Java or Kotlin for Android. The newer languages - Kotlin and Swift - are like using Visual Basic vs C++ in your desktop.
This basic know how let's you create anything, even though it might not be the most "efficient" way.
...
Figma is simply one way, a recent popular way, to do ux/ui mockups in a group way. This differs from 1 person doing mockup samples and coming back to the group for comments/approval.
Whether tying up a group doing mockups is efficient depends on the situation....
....
Beyond the interface, which is typically the graphic / ui designer's role on big projects, there's all sorts of frameworks /sdks and such being used to simplify things as a programmer.
Flutter, React, etc all can make creating the ui etc easier. This choice is typically decided by the company in larger , ongoing projects. For small projects, you can often decide/influence this.
....
Cross platform development can be a total pain using xcode/android studio + native languages because you can't drop code from one into the other.
This poor state of app dev drives many to different methods around this.
One is web apps using JavaScript etc, which also makes it easy to take up websites.
Another are cross platform dev platforms like Xamarin, net maui, etc. You code to an intermediate language that gets recompiled/interpreted on ios/android. The issues here is the lag in incorporating new os features, 2nd language interpretation overhead, difficulty in finding programmers that know such vs using native ide+ languages, and unknown future platform state (some are open source, might even be abandoned or so significantly altered that your spending more time updating code to work than getting work done).
Some are complete/nearly complete independent ide+ platforms like Embarcadero Delphi, B4A, etc. These let you do basically everything in them for output from Win to OSX to iOS to Android with minimal platform specific changes (like screen ratio and orientation and layout). These can be very fast for smaller teams or the individual app programmer to crank out working apps, often business apps or games.
For games, there's game specific platforms that incorporate a ton of things that make game making easier - Unreal Engine is the big monster the top companies like Activision would use if not custom in house code. Unity3D, etc are also used for smaller games. For a small developer team or single, even Solar2D, python + pygames wrapped, JavaScript can do because they're simpler or have many more knowledgeable (JavaScript games).
...
Then, there's platform adoption.
US, Japan tend to be the odd duck - iPhone have a high market share. In the majority of the rest of the world, Android is it (much like Windows on PCs).
So in EU where Android has the major share, you could learn only android studio and get a job (let the bigger companies hire an ios programmer if they want to release cross platform). The smaller companies might want programmers to know both, but again, that's a pain maintaining 2 code bases and you might be spending too much time maintaining and syncing features than adding new.
..
In short, Android Studio + Java know-how can get a job quick enough. Add Kotlin + Flutter/React as a bonus, but don't expect every job to need these.
13
rqw807y1gvSoftware Engineer
phew... what this guy said.
1
About
Public
Software Engineer
Members
80,159