My First Year as a Graduate iOS Engineer at Wise

Sonnie Hiles
Sep 10 · 5 min read

I joined TransferWise as a graduate iOS engineer on the 24th of August 2020. A year has passed, and what a year it’s been. A lot’s changed! We’ve rebranded from TransferWise to Wise and become a publicly traded company. The project I’ve been working on since joining has moved into closed beta. I’m now no longer a graduate and have become a mid-level engineer.

I’ve naturally learnt tonnes and improved as an iOS engineer. Working and collaborating with a diverse range of highly skilled engineers has really rubbed off. I’ve learnt how to build, ship and maintain a product used by millions of customers worldwide. I’m a much stronger iOS developer than I was a year ago.

What’s been a continued surprise is how much I’ve learnt about what I want to be doing and how I then want to do it. Here are the big three lessons I’ve taken away from the past year:

1. Becoming a product engineer

Initially, when I started, I wanted to do iOS engineering and nothing else. That’s why I became an iOS engineer after all! Turns out, this was incredibly short-sighted. As I’ve learned to become a well-rounded product engineer, I’ve made significantly more customer impact. So, what exactly is a product engineer?

A product engineer’s responsibility is to always approach a problem by asking ‘What do our customers want’? They should understand why we’re building a product by listening to our customers and what we can focus on to maximise impact. They’re involved in everything from leading or taking part in user research sessions, defining the product and vision for the team, and of course, building the software solutions themselves — For more information, read Wise’s full blog post.

It’s mean that I’ve had the opportunity to work with and learn from the other disciplines on our team. This year I’ve worked closely with designers and researchers on the framing and visuals of our new product. With compliance to ensure what we’re building is legal and fair for all customers. With backend engineers to design the APIs we’ll use. I’ve even written and deployed a backend feature (Don’t tell the iOS guild! 😅).

Building and maintaining our iOS codebase is still the main part of my job, and it will continue to be into the future. However, what’s different for me is how I now frame my role mentally. I now consider iOS as my speciality rather than my full role, as there’s a lot more value and impact that I can bring now using all the skills I’ve picked up from the wide range of people I’ve had the opportunity to work with and learn from.

2. Autonomy is empowering

I not only work in an autonomous team where we’re empowered to make decisions for our product; I’m also trusted to work autonomously. This autonomy has two huge benefits that I’ve come to love over the last year:

This autonomy and what it empowered me to change resulted in one of my highlights of the year. I noticed that the accessibility of our app needed improvement; this started with me making small component by component changes to our design system. This had a significant impact, but I could only do so much alongside my team’s work. Along with another passionate engineer, we interviewed a blind customer to better understand their issues while using the app. I then produced a write-up and presented this to the other iOS engineers at Wise.

We continued this work with a follow-up interview as we iterated on improvements based on the previous feedback. This culminated in giving a presentation to all the engineers at our internal tech conference, and then all our designs in the following weeks. As a result, I’ve found a group of passionate, like-minded people across many disciplines who are keen to improve accessibility at Wise. Together we’re continuing this work on a much larger scale than I could’ve ever achieved alone 🚀. This is definitely one of the most fulfilling and motivating parts of my job!

3. Working sustainably

I noted it in My First Three Months at TransferWise post, but when I started, I was working at an unsustainable rate. This was because of all the learning required to build the fundamentals I’d need moving forwards in the role — I ended up exhausted and screaming towards burnout in the first few months. This approach had been fine at shorter internships in the past, but wasn’t going to work at a full-time job.

I’ve learnt that a consistent and sustainable pace is the key. It lets me work comfortably without over committing myself but gives me the ability to (briefly) push when deadlines demand it. I’ve also learnt that I don’t need to be writing code every day, sometimes I feel like I need a break, and that’s fine. There’s plenty of other ways I can add value through things like documentation on those days! As I’ve adapted and acclimatised to working remotely, I’ve become much better at taking periodic breaks throughout my day rather than just sitting in front of the computer all day without moving.

Something that I am still working on is taking my holiday when I need it. I’ve never had to manage my own time off before, at school and then university it’s prescribed. Now, I have to choose when I use my time off, which is a real learning curve. Honestly, I’ve not done well or adjusted to this yet. I’m eight months into the year and have only used a single day off 🤦🏻‍♂️… As I’m writing this, I’m taking a week and a half off and plan to have a lot more as the year goes on.

It’s been a fantastic and exciting first year at (Transfer)Wise. I’ve learnt a tonne, both technically and around how I work best, meaning I’ve really grown and developed into a product engineer. I can’t wait to see where I’ll be in another years time! 🚀

Wise Engineering

Posts from the @Wise Engineering Team