Most efficient way to become an iOS Engineer after years of experience.
In an increasingly smartphone dependent world, iOS Engineers are quickly becoming essential to nearly every industry. Simply put, they make our world turn — from giving presidents the ability to message millions of people in an instant to allowing you to buy stocks or crypto. If you’ve ever considered a future in tech, now is the perfect time to hop on board.
The U.S. Bureau of Labor Statistics projects software engineering job growth to reach 22% over the next decade — far exceeding the expected job growth across all occupations. Not to mention many entry level positions offering a six figure salary.
The greatest thing of all is, this field is accessible to anyone with a desire for personal growth, an internet connection and a computer.
And no, you do NOT need a college degree. I’m saying this from personal experience since I myself don’t have a degree and have been working as an iOS Engineer for 5 years now.
Without further ado, let’s get started!
Step 1: Get an Apple Computer
You need one to be an iOS Engineer.
To build iOS, iPad, Apple Watch or Mac applications, you will need either a Mac, Macbook Pro, Macbook Air, Macbook or iMac. The newer the better, however, many professionals today are using 2013 Macbook Pros with little to no issues.
If you don’t have a mac and are interested in buying one, here are some links for macs I personally recommend:
Macbook Air 13"
Macbook Pro 13"
Step 2: Download Xcode from the Mac AppStore
Xcode is known as an “IDE” and is where you will type all your code and build amazing iOS applications. Every tech company like Facebook, Uber, Snapchat and TikTok built their iOS application on Xcode and is the industry standard for any serious technology company.
To download Xcode:
- Open the App Store on your Mac computer
- Type Xcode on the search bar at the top left
- Click the download button on Xcode. The Icon looks like a hammer in front of a blueprint.
Step 3: Learn Apple’s Programming Language called “Swift”
Also known as “The Swift Programming Language”.
A programming language is very similar to a spoken language in that there are multiple languages, some similar to others and some not so similar. However, whereas with a spoken language you’re trying to communicate with a person, with a programming language what you’re doing is trying to communicate with a computer.
Each with their own set of intricacies that the engineer must learn to build quality software that’s efficient, beautiful and elegant.
If you are a beginner and want to start learning Swift with zero background in programming, below is a great Youtube video that will teach you all the basics you need to learn to build iOS applications:
If you already know a programming language and are comfortable starting at a more advanced level, below is a great video for building an iOS application very similar to Facebook!
Step 3: Struggle
Learning to “code” is going to come with many challenges. There will be tough times where you’ll question your ability to learn this new skill and way of thinking, however, I can assure anyone reading this, YOU WILL GET IT.
If you find yourself feeling down or procrastinating because you’re finding learning to program more challenging than you thought, DO NOT GIVE UP.
Most Software Engineers have gone through this.
You’re re-wiring your brain by learning to program and little by little you will begin to think like a Software Engineer. Unfortunately, this process takes time and patience.
Step 4: Try Building A Passion Project!
Build your own app and launch it on the App Store.
This app doesn’t have to be great and it doesn’t have to be a unique idea. It could literally be ANYTHING! What’s most important is that you go through the entire process of coding and launching an app from start to finish. Interviewers LOVE when an interviewee has launched their own app and is able to talk through their process of building it. That’s how I got my first job!
The reason I got into programming was that I had an idea for a mobile app that I wanted to build. I was playing soccer one day and thought of building an app that connected soccer players to other soccer players in their area to play pickup games. To my surprise there was nothing like this in the app store so I began learning to code and actually managed to launch a very crude version on the Apple AppStore. The app didn’t take off and I didn’t become rich, however, a major reason why I got my first job as a Software Engineer was that I showed the interviewer the app I had built during the interview. He was so impressed that I had actually built something that I ended up getting the job.
Step 5: Learn to Interview and Learn to LinkedIn
Interviewing for Software Engineering positions is a skill all on its own. You will be asked about your experience and most likely given a coding challenge.
As far as your experience goes, if you’re reading this, you won’t have any. However, if you follow Step 4 of this article and build a passion project, you’ll be able to showcase your work to the interviewer! This will help you stand out from the rest.
As for the coding challenge, this will be a series of brain teasers that you’ll be given and will require that you solve them using a programming language of your choice, aka Swift!
Below is a link to a free website that most engineers use to study coding challenges of all skill levels.
LeetCode - The World's Leading Online Programming Learning Platform
At LeetCode, our mission is to help you improve yourself and land your dream job. We have a sizable repository of…
If you’re able to make the investment, below is a great course that teaches you everything you need to know to pass a coding interview. Including interviews for companies like Facebook, Google and Amazon!
AlgoExpert | Ace the Coding Interviews
The leading platform to prepare for coding interviews. Master essential algorithms and data structures, and land your…
Lastly, learn to LinkedIn!
So create a LinkedIn account, spend some time making it presentable and start applying to hundreds if not thousands of job postings!
You can search for positions such as Junior Software Engineer, iOS Engineer or simply Software Engineer.
You can even reach out to other Software Engineers working at your dream company and ask them for advice on how to get in!
The world of software engineering has completely changed my life for the better. I hope it changes yours as well. Working in tech surrounded by other engineers is an amazing experience. You’ll be alongside others just like you that are dreamers and passionate about the world of technology. You’ll get a change to meet and work alongside engineers from all around the globe like India, China, Ukraine and many other countries. It’s an absolutely beautiful life and I can’t wait for you to join.
One More Thing…
Many of you will work for technology startups and many of you will build your own!
Below is Jason Calacanis’ podcast This Week In Startups where you’ll get to hear stories about founders who were just like you that have managed to build multi-million and even multi-billion dollar tech companies.