Job Title:
Application Developer (Mobile Apps)
One Sentence To Describe Work Role:
Create, test and program applications for mobile devices.
Number Of Years Dedicated To This Field Of Work or Lifestyle:
1
Category Of Work:
Employment – Paid Work
Country / Area of Work:
Bulgaria
Industry:
Technology – Software Development
Type:
Employment
Key Skills For The Job:
There are many skills needed to create, test and program applications for mobile devices.
– Programming (such as C#, JavaScript, Java, SQL)
– Ability to work using an integrated development environment (IDE, such as Android Studio) or a cross-platform game engine (such as Unity).
– Skills relating to the assets (sound, images, etc) you will be working, so that you can work with them effectively i.e how you can best change assets to improve processing speed, size of app or for aesthetic benefit.
– Time management – to manage time well between each stage of app development. From concept and design through to coding and testing. Managing time so that one element does not take a strain over others.
Vital Key Skill:
Analytical skills.
When creating a mobile app from beginning-to-end, you need to be able to have a good understanding of the project and of the tools at your disposal before you begin coding.
Analyse how best to use the IDE or game engine, think about what resources you will need, have in mind how all the areas will combine to enable you to produce the app you intend.
With every element of developing an app (planning, coding and testing stages) you will need to have a very strong set of analytical skills to overcome any challenges that arise. Challenges include software bugs, the need to reduce the apps overall size or working to improve the speed at which the app performs.
A basic understanding of a programming language is of course vital. A software developer will however be more marketable when they show they are able to utilise a breadth of technologies available to them. Also in analytical skills applied to the application programming interface (API’s) of a given language they work with, to select the best elements for the task in hand.
Your Personal Experience Of Entering This Role:
Self Taught ( Demonstrated skills using a portfolio of work –> then took up employment as an Analyst Programmer which I did for just under 2 years before starting work as a freelance app developer).
Tips For Undertaking This Work:
My advice for anyone wishing to get into app development would be to get experience with the industry standard tools and build a demo of work to showcase your skills. Being an app developer isn’t dependent solely in the ability to code but in combining multiple skills (explained in ‘Key Skills For The Work’ above) to build an app from start to finish.
Depending on the platform for which you wish to develop for and in the programming language you work with, you will find a number of awesome free and paid for resources available online.
In developing for Android, Android Studio is the integrated development environment (IDE) for Google’s Android operating system and is available for free online. Another great resource is a cross-platform game engine called Unity by Unity Technologies. This is a cross-platform engine so you can write the code in essence once and then deploy your creation across multiple platforms (for mobile, desktop, VR/AR, consoles or the Web). Unity has varying price-points depending on your situation from free to paid for.
With the two resources mentioned above there are plenty of free YouTube tutorial videos teaching you how to make apps available online.
Future Progression Or Developments:
Depends on whether you work for yourself or as an employee. Working as a freelance app developer you can pick what apps you chose to develop. Selecting projects that push your skills in your chosen direction. Working solo means you have full ownership and responsibility for all areas of the business such as finding clients, project management, software development, customer liaison and all the financial aspects of your work (invoicing, tax returns, etc).
Working as part of a company you could find that the programming responsibilities are segmented i.e. testing, user interface, database, developers, etc. Depending on which team you are in currently and the size of the company you work for, there may be an opportunity to become a Lead or Head of the team.
There is’nt really any advice I could give to a younger me. Before I published my own app I was an Analyst Programmer working on large scale J2EE applications consisting of technologies and frameworks including MVC, JSP’s/ Servlets, XML/XSLT, JSTL, Java, PL/SQL, Oracle SQL, JDBC, Javascript, Oracle (10g/11g), Apache Tomcat, Eclipse & Toad.
I am a self taught programmer and I worked hard to develop my skills before entering employment. With my professional experience I was able to further develop my skills. Moving into app development was an easy transition as in encompasses the same skills set.
I will say tho, the best bit advice I always try to give when talking to people wishing to get into app development or into software development is just to code! – “Code, code, code!” It doesn’t matter where you will end up as a programmer, there is so much value in getting experience in writing code regardless of what language this is in. No matter what job you take up in the future, the skills at being able to resolve bugs, pick out best parts of API’s, combine technologies and in gaining confidence in a broader range of technologies will always help you in your career.
What Are The ‘tools of the trade’ Used Daily:
Unity –> Cross platform engine
MonoDevelop & Notepad++ –> To write and edit code in
Inkscape –> For graphic work
Mobile devices –> Testing
Internet –> For looking up API’s and general point of reference for all things tech
A Typical Day’s Duties:
At the start of my projects I produce a list of tasks that are needed from start to finish to produce an app.
I know what functionality I will need to create, combining code and assets. I make a plan of what needs to be made in order of precedence.
On a daily basis I work towards my tasks in order they are set. Each day varies depending on the current task in hand.
An example of one day could be:
– Optimise images
– Import images to the project
– Add functionality as required – write code to accomplish the task in hand. i.e. maybe an image is to be a button image, add this image to the button then program as needed – such as to change screen or play a sound, maybe the image is for a character so functionality needs to be added for movement and collision detection.
– Test on mobile and tablet devices
– Fix any issues or bugs
– Save and back up work
Is Travelling A Regularly Part Of This Work:
No
Weekly Working Hours:
Part Time
Type Of Hours Arrangement:
Flexible Based On Your Own Needs
The Best Thing About The Work You Do:
Taking an app from concept through to a finished app available on Google Play is awesome. Not only can the app help users (my series of apps are designed to help people learn to speak Bulgarian) but its also fun to see the app be used in countries all over the world.
Your Least Favorite Thing About The Work You Do:
Online administration duties take up a lot of time but are very important.
Being a solo app developer I am responsible for everything. So all the social media account set up, Google Play Developer account set up – reading all the T&C’s, store listing info, etc is down to me. Maintaining all of these is also my responsibility.
Any Duties You Hadn’t Anticipated Prior To Undertaking The Work:
Given my background in programming no tasks took me by surprise.
Before being a programmer my background was in Business (I have a degree in Business Management and a number of years experience working in different Business roles). So even the marketing, administration, business side of app development was not able to surprise me!
The Top Perks Of The Work:
Being able to adjust my working times around my needs.
Other Work In The Same Sector:
Being an app developer you may wish to move into other areas of software development such as web developer, QA, database engineer, user experience (UX) or take a bigger move into non-tech dev side of things such as marketing, sales, management, etc.
Additional Info You Wish To Share:
The role of app developer is very challenging but rewarding. With changes in technology being ever constant and also in the demands of customer needs / best practices (recommended as industry standards) your role will always be challenging.
As an app developer you get to connect with customers in a cool way. Customers can leave reviews for your app online, you can communicate through your social media channels in real time, and you can see your app grow in terms of the global community of people who are installing and liking what you have produced.
One Reply to “Application Developer (Mobile Apps)”
Comments are closed.