===This month we are interviewing our Head of iOS development, Damian Wojtczak.
When did you join the company and what were you doing before?
I started my career as a self-taught software developer back in my native Poland. In 2004, soon after Poland joined European Union I made a decision to move to the UK and work as a freelance web developer. Since the introduction of the first iPhone in 2007, my attention shifted from web into mobile development. I decided to earn formal qualifications and started a Computing degree at Coventry University with a focus on iOS development. I joined Exploding Phone in April 2012 as my university placement. I worked here for a year, went back and finished my degree and then joined Exploding Phone as a full time employee.
Can you describe what you do for Exploding Phone?
I think of myself as a Full Stack Developer. So while most of my work is in iOS app development, the range of actual deliverables is much wider. I manage projects throughout the whole development life cycle which usually involves developing back-end services, front-end web applications including App Content Management Systems, designing integration and deployment pipelines or architecting cloud based software stacks – usually on AWS. Many clients require enterprise level security, for example ISO27001 compliance. Finally I need to ensure that the apps comply with accessibility and scalability requirements. To achieve this level of functionality I will use Swift or Objective-C for iOS apps. For other parts of the stack I use PHP, React JS, JavaScript. I use Codeigniter for back-end PHP development. Database environments are usually SQL or MySQL. Finally I sometimes need to turn my hand to C# and ASP.net.
What is the most complex project you've worked on at Exploding Phone?
The most complex was probably an iPad CAD application for generating architectural plans for heating installations. The system then performed advanced calculations to generate highly accurate heat loss data. The maths got quite advanced and way beyond what I would normally expect to have to work with as a software developer.
And what is the strangest or most unusual project you’ve worked on?
I developed a bespoke head-up display for motorbike helmets. I needed to develop an iOS GPS navigation system that communicated with the helmet and displayed turn-by-turn data. The testing process was particularly interesting. While most of the functionality could be tested in the office environment it also involved being driven around and debugging the system via the app, a helmet and a laptop, all at the same time!
How do you feel you've developed professionally since joining?
I have to confess that earlier in my career I didn’t appreciate the complexity that supports the actual app running on the mobile device. So as already mentioned I now need to consider things like accessibility, localisations, usability testing, security, multiple time-zones support, cultural differences, back-end services, CMS, databases and much more. I suppose it’s a bit like an iceberg where the part you can’t see is more important than the bit you can. Many customers also don’t appreciate this! That said, my goal is to hide all this complexity both from the customer and the app user.
How would you describe the Exploding Phone culture?
That’s an easy question. Passionate but without any over-grown egos. The team is highly collaborative and thus strong on team work. Yes, people have strong opinions, both professionally and personally, but everyone is respectful and this helps make Exploding Phone a fun and relaxed place to work.
What motivates you professionally?
Software has always been a fascination for me, ever since I wrote my first Basic program for a Commodore C64. And the IT world moves incredibly quickly meaning there are always new skills to develop. This fascination spills out into my personal life as well. When I bought a Mavic drone I pretty soon downloaded their SDK to see how I could extend its functionality. And when I got interested in BitCoin I wrote my own iOS blockchain application to understand the technology behind the crypto currencies. I’ve recently purchased an eBike and I’m looking forward to tweaking the engine’s firmware if possible (and safe)!
How has Covid-19 and Lock-down impacted the way you work?
As a company I think we’ve managed to transition to home working remarkably well. Even before the ‘new normal’ we were using a range of collaboration tools and this has just expanded. However I do miss the personal interaction, Slack (our communication platform) is great but it’s not the same as calling across the office, and the banter is not the same.
What are the key characteristics to be successful in your role?
OK, so in my view being a good developer is not just about being able to memorise hundreds of algorithms or solve meaningless programming puzzles. Any skill that people can bring to the job could be technologically obsolete in a couple of years. To be good at my job you need to be a great learner, quickly adapt to the constant technological changes and be able to solve real world problems with the most efficient and effective solutions. This often involves collaboration and being prepared to ask for help.
What is your favourite memory of working for Exploding Phone?
It will probably come as no surprise to learn that the intersection of technology and motorcars is something of a sweet spot for some of us in the office. One day Andrew’s Model S Tesla was in for service so they had loaned him a Model X with Ludicrous mode enabled. Let’s just say that we all enjoyed a little trip out that day...
If you could have any other job in the world what would it be?
If coding was no longer an option? Let me think. I recently enjoyed a fantastic holiday with the kids on a farm. It seemed pretty idyllic, so I guess it would be good to be managing or better still owning a little agro-tourism business.
How do you expect your job to change over the next 3 to 5 years?
Apple has released Swift UI framework which offers an innovative way of creating User Interfaces. This is gradually maturing and I expect to utilise it more and more over the coming years. I’m also expecting Functional Reactive Programming to become more widely adopted. We’ve used it on some projects but now that Apple has introduced their own Reactive framework I expect to see accelerated adoption. Finally, coming back to the Covid question, I expect that hybrid working practices, that is a mix of home and office, are going to become more widely accepted.
Thanks for your time today, Damian.