Today we’re very lucky to have a guest interview from Matthew Cawley, Senior Developer at Tecmark, a digital marketing agency and mobile app development specialist company based in Manchester and London. Matthew has worked on some very creative and challenging projects and has been kind enough to share a little of what it’s like to work as a developer full-time.
Apps are ‘the thing’ these days and more and more companies are rushing to get one developed. What advice would you give to someone at Uni who’s thinking about a career in app development?
App development is more than just the standard code learning curve that a lot of developers may be used too and more emphasis should be put on the fundamentals of development as opposed to the natural coding style. Understanding what makes an application run well with limited resources and working within the guidelines set out by companies like Apple that put standards in place that have to be analysed before development can even be considered.
Are there any books/websites/other resources that have become invaluable to you as a developer?
The biggest resources that I have found helpful are Stack Overflow, which usually provides answers to the most common queries, Google and the development documentation such as the ones found at developer.apple.com. Books are great as a baseline for learning a platform but can become out-dated in a matter of months so when looking into purchasing books, look at more generic books on development as opposed to a book on ‘Developing for IOS 4’
What are some of the key challenges that exist in app development that maybe aren’t such an issue in web development?
App development throws in a lot of challenges compared to web development mainly due to the types of projects that are being developed. With applications we are hitting a market that wasn’t previously used and that is the portable market. Current companies are trying to find new and innovative ways of reaching their customers and this usually results in new ideas that no one has ever thought of or pushes technology to a level that doesn’t normally happen. As a result of this developers are constantly being put in a position where what they are developing could be completely new to them, even if they have been in the industry for several years.
With mobile development greater attention needs to be put on how the code is written as performance is vital for the mobile market. An app that performs badly or crashes due to memory issue will gain bad rating very quickly (even if the app is potentially the best in the world for what it can do). Where as websites are powered by high end hardware, mobile devices are limited in terms of graphics power, processing power and memory. When branching out to the Android market there are over 700+ Android devices, each with different hardware specifications, so ensuring your app is compatible with all these devices is a very challenging task.
Now you’ve worked on quite a few very exciting projects that I’m sure you’re keen to discuss. There’s a good combination of useful (Diabetic Friend & Keep Your Licence) and fun (Pic n Mix). Is there a particular type of project you most enjoy working on?
The projects I enjoy working on most are the ones that bring something new to the market. Apps that push the devices to a new level or do something no one else have thought of become great projects to work on and you get a greater feeling of pride when you know it was your team that helped do it. App development is a constant learning curve with no limits to what can be learnt, and new project ideas are a great way of expanding your knowledge and skills in the industry.
The Power of Thor App is obviously something you’re really proud of. Could you perhaps take us through that: how it came about, the challenges (and I’m sure there were many) and how you might do things differently if you had a second go at it.
The Power of Thor was our first Major Augmented reality app . The app was developed for Paramount Pictures and we worked in conjunction with production company, The PPC. The idea was to create an application that could capture Thor’s most identifying feature and put in the hands of the users. So the idea of allowing users to throw Thor’s Hammer at the world around them became a great idea that not only would provide something new but also give the user a great experience. This project had many challenges during the development, the biggest one caused by the hammer effect itself.
The aim was to create the best looking effects in a real time environment. This bundled together with mobile devices put a lot of work into the methodology behind how these effects could be created whilst preserving the high quality imagery and performance along with direct video integration. The iPhone provided the better initial target for this application due to the performance capabilities of the iPhone 3Gs and the iPhone 4. The Android devices however were extremely challenging as the hardware capability were so different from one device to the next and providing a solution that worked on as many devices as possible was a long thought out task which I feel we did a great job of accomplishing. To have a second go at this project we wouldn’t really have done anything differently however if we were to make a similar application in the future; the knowledge and skills we have learnt during this project will allow us to make a great application with less challenges.
Finally, working agency-side, there’s obviously a need for developers to have a combination of both technical and people skills. If you were to create a University course for app developers at an agency, what modules would you have?
The main modules I would place into a University module are:
- Object Oriented Development
- Development Concepts
- Java Development
- Memory Management
- Project Analysis
- User Interface Design
- iOS Development
- Android Development
- API Development
- Game Development
- Concurrent Systems