From Junior To Lead Software Developer
What you need for a successful career
in software development.

4 tips for software developers: get out of your comfort zone to boost your career

Filed under: software development — October 20, 2017

Software development is a fast-changing field. But, you, personally, do you write code now that you wouldn’t have written a year ago? If not, you may me stuck in your comfort zone, and missing out on a lot of career opportunities (as well as a lot of fun).

I’m NOT suggesting you do the tips below in your spare time. I don’t believe in the myth of “You need to have x personal coding projects to show your worth as a professional software developer”. Indeed, I have a young family and I restrict my working hours (Sounds crazy? Read Why the CEO of Basecamp only allows employees to work 32 hours a week). All those tips below should be done while working as you normally do.

Tip 1: Identify a coding task you are reluctant to do and force yourself to work on it for 30 minutes

We all have coding tasks we don’t like doing. We know them, our colleagues know them, our employers know them (or soon will), and they are holding us back. Most often than not, it’s just a silly reluctance: yes, we may never love doing them, but there is no reason to let them stop us from progressing in our career.
(more…)

The analytics checklist: what to measure and look for

Filed under: google android — March 27, 2015

When you launch an app or update, you often hope to get new users and/or more revenue. Google Play Developer Console keeps track of those metrics for you, but whether you see numbers you like or dislike, you don’t know much about what drives them.

Analytics, which I’m using in the general sense of collecting data on usage and errors, can help you understand both the pain points and the users of your app, allowing you to focus on removing roadblocks and serving your users’ needs better. This will, in turn, increase your users’ satisfaction, leading to higher ratings and new users, as well as higher revenue per user.

Google Analytics, specifically, comes with an Android SDK and the web interface is already known to many business users, making it a great tool to implement your analytics strategy. There is a whole section on the android developer website taking you around its features. It’s a great product that gives you rich “out of the box” data on your users.

Putting aside the implementation details for a minute, let’s focus on what to measure and look for…

Identify functional problems

  • Crashes – If you don’t already, regularly check the reported Exceptions and ANRs in Google Play Developer Console.

  • Caught Exceptions - Some exceptions are expected but you should still know about them, because they may indicate a latent issue with your app.

  • Communication with servers – Background syncing is vital to delivering a fast, smooth, efficient app. How long do your server calls take? What percentage of your calls end in an IO Exception or a response time of more than 10 seconds? What percentage of your users are on wifi, 4G, 3G and 2G? How often do specific exceptions related to your local caching and server sync happen, for example SQLExceptions?

  • Location, location, location – For exceptions that you catch, do they happen specifically for a given time zone or language? Android is the most popular mobile platform in the world today so you can’t assume that your users live in your country and speak your language.

  • Search – Do users search for what you expect them to? Do they make spelling mistakes in their queries that appropriate suggestions could minimise?

(more…)

Delivering an Android app for a large established non-tech company: lessons learned

Filed under: google android — July 8, 2014

The last year or so, I’ve been the lead developer for the Android mobile team at British Airways. I was brought on board to help deliver the newly designed app, which we shipped on time on 21st May 2014.

British Airways is a company with a large IT department but, when I joined, very little Android expertise. I think quite a few other Android developers may find themselves in a similar situation, so, hopefully, sharing my lessons learned will benefit others.

Disclaimer: this blog post is my opinion only and doesn’t necessarily reflect the opinion of my employer or colleagues. Blah blah, you know the legal blurb.

Lesson 1: It’s important to evangelise about Android up and down the business ladder

(more…)