Interview With a Self-Taught iOS Developer

Jeff Morhous // December 11, 2020

Here’s the tweet that I’d been waiting for since I started following Frank back in April.

Frank comes from an IT background, and landed an iOS development job in the middle of 2020. Heck of a year for a career change. About a month ago, he agreed to sit down with me and talk about his journey to becoming a Mobile Software Engineer, and his story is definitely worth sharing.

What was the beginning of your career like? How did you break into tech without a degree?

I actually, funny enough, used to work at Apple. I was a genius at one of the Apple stores. I worked there for about 6 years, starting at sales and working my way up to genius, which is pretty much everything. Towards the end of my time there, I said “You know what, I need a change of pace, I’m going to start coding.” I poked around, initially looking at game development. I started off with all the worst preconceptions of how great I was gonna be, and found out very quickly — “Oh no, this is not easy.” It was super hard. I ended up switching to an IT job, and did that for about two years.

I came across an opportunity from University of Idaho — they had partnered with Apple to offer free coding classes to the community, and they were looking for someone to run it. So I figured, “What better way to learn than by teaching!” That was in 2018, and I eventually left my IT job, and went to a better IT job at a pretty mature startup.

Shortly into the work-from-home stuff, the company I was working at was hit with layoffs. At this point, I’d been doing this teaching coding thing for a few years. I figured I either go back to another IT job, which I won’t enjoy, or I can jump into iOS development.

So how did your job search start?

I had a few apps under my belt, but I still took a few months to study, work on my own apps, and work on my twitter, LinkedIn, and Resume. There’s definitely an element of being known, creating some legitimacy.

How does Twitter fit into your story?

Twitter went from this thing where I knew I had to do it for my career, to genuinely enjoying the community. That’s how I met you, and that’s how I met a number of people — I’ve even been to a couple twitter dev meetups!

When did you start applying for a new job?

I probably started kicking off my applications about two months after I was laid off. I applied at probably 80–90 companies. My daily routine was just get up, go to LinkedIn and Indeed, and just apply constantly. I had 4 0r 5 interviews, and 3 of them I had a second round with. (Writers note, this is an awesome interview success rate. Frank rocks at interviewing)

I really connected with the company I’m with now. Of all the opportunities I could have taken, I’m sure this is the best. There’s a ton of opportunity for me to grow.

How did you get started learning?

I started with Apple’s “Everyone can Code” free materials, which is what Inspire Idaho was using as a curriculum. It kind of gave the ground level, and my class expanded on that to build out real apps. It’s important to pick something that you want to build, even if it’s super basic. Something like a button that changes a color can teach you a lot. I definitely tapped into Hacking With Swift, 100 Days of Swift, and everything that Paul Hudson has done. Building an app is really important. Realizing, I want to do ‘this’, and then seeking out the resources and gaining the necessary knowledge to build it. I couldn’t list every tutorial I followed, or every Medium/Reddit/Blog/Stack Overflow post I read.

How are you continuing to build on your foundation of knowledge?

Oh my gosh, dude, it’s a daily thing. One of the challenges I’m facing right now is learning dependency injection, and doing that on a deadline is a bit stressful. I’m on a small team, and my coworkers are amazing. My teammate has been taking time to bring me up to speed, but there’s still a lot I don’t know. You kind of have to take it as a learning opportunity, write down things to remember, and try to use new knowledge to solidify it. I might go a little bit slower than a coworker, but all the work I do gives me a building block to keep going. When you find the right company, you’re not less of an employee for having gaps in knowledge. Having open sourced projects on Github helps set expectations for companies going in too!

What’s the best part of being an iOS Developer?

There’s a lot of great things! For most of my career, I’ve been in a customer-service type position, where I do things for customers. There’s only so many ways you can reset a password or replace a hard drive. You go from that, to being creative with things. It definitely brings a new perspective, combining logic and design. We don’t have a UX Designer, so we get to build both sides of our app. I’m also a homebody, so being remote is fantastic!

Speaking of — how has remote work been for you?

I was actually kind of remote before this, I was pretty much the only IT person at my company’s site. I was in an office, but all my meetings and whatnot were on video call, so moving to completely at home has been no problem at all. I like being at home, I’m lucky enough to have a space that can be my office. I think it’s great — I like the fact that there isn’t someone on top of you cracking the whip, since I’ve had that kind of job before. Especially with coding, I think the isolation helps. To be able to put on some headphones and just focus is great. I’ve actually been thinking about buying some more pairs of sweatpants.

What drew you to iOS over any other kind of development? Would you make the same decision if you could go back?

The big thing that drew me to it is that I’m a huge Apple fan. For all of their flaws, their philosophy of technology is what draws me to using it. In a very weird way, I started college for a music degree, and the Mac was the place to be in that scene. I was homeschooled, and my mom put a lot of schooling me. She was an artist, and that left a huge impact on me. Apples intersection of art and technology is super evident. If I could go back, I think I could do it again. There’s all sorts of products and technologies that you could learn, like game development, or the web, but I think for now iOS is the place to be.

How do you feel about cross-platform stuff, like React Native? Would you ever switch into that?

I don’t have a huge opinion because I haven’t used it enough. But I definitely believe in using the best technology for the job at hand. Knowing the hatred of React Native in a lot of the community, I do think that native code is better. You’re able to follow guidelines for that platform much closer, and your development time often ends up being faster anyways. Being as native as possible often gives the best experience for users, but it still depends on what you’re doing.

I hope you enjoyed reading about Frank’s story as much as I did writing it up for you. Thanks, Frank, for letting me talk about your story! You can find Frank on twitter, where he is an active member of the thriving tech community.

You can also find me on twitter, or follow me here. If you want to be notified when I write something else, you can join my newsletter.

If you enjoyed this, consider signing up to my newsletter to get occasional updates about new things I make or write.