Become a Senior iOS Developer in 2 Years
5 tips to guide you on your journey to becoming an amazing Senior iOS developer
There tends to be a lot of focus on the hard skills you need to become a developer, but I see the value in both hard and soft skills. There are certain behaviours you can adopt that will help you to grow in the industry if you want to work with iOS.
Everything started when I bought my first iPhone 5S. A couple of months later I decided to switch from my ASUS to a new MacBook. It was definitely the best choice!
I fell in love with the Apple Ecosystem and decided to write applications. I didn’t choose the programming language first, as most of my friends did, but I chose the platform on which I wanted to write— iOS. It was really difficult to learn everything from scratch but if I had to make the same decision today, I would — I don’t regret it at all.
My internship at EL Passion began in February 2015 and I was later hired on as a developer. I was a total beginner with only some experience in C# language.
I’d like to share my thoughts about becoming a developer and my journey through gaining experience over the last 4 years. It’s not just about being able to write great code, it’s also about the soft skills you need which will help you to start your journey to becoming a better iOS developer.
1. Listen carefully
My first days were very exciting but they were also exhausting. I wanted to learn everything I possibly could and it felt like my brain was about to explode every day.
My best advice is to try not to interrupt someone when they are taking the time to explain something to you —they are giving you their time and their efforts. If you don’t feel like you understand everything they’ve said, don’t be afraid to ask for some additional materials you can look at when you get home.
It’s only natural that you’ll feel overwhelmed at the start. There’s a lot to learn! Don’t underestimate the power of using your personal time to get caught up. But more importantly, listen carefully when someone more experienced is there to guide and teach you. These moments are extremely valuable.
2. Don’t be afraid to ask questions
I remember my first days perfectly when there were a lot of new terms and programming problems which I didn’t understand at all. In most cases, I just asked my mentor and he tried to explain them to me. Some examples of the questions I had were about how we should layout UI elements using UIKit, or how and why we invoke network requests.
Some answers I wrote down and after the workday, I made sure to re-read my notes— I found this to be extremely helpful.
Remember, the fact that you don’t know everything doesn’t matter, it’s about the effort you put into extending your learning. I felt that I had huge gaps in my knowledge when it came to iOS development, so I spent an additional 30–60min every day to develop myself in specific areas. This means asking the right questions and making sure to jot down some notes.
3. Be patient!
There’s a lot of new information and it’s impossible to learn everything you need to know about development in only 1 or 2 months. Don’t try to do everything at once! Learn new things step by step, it’s much easier and more effective.
Taking each step, one at a time will also ensure you gain a level of mastery in each area. This will make you a better iOS developer with a stronger grasp of the information.
4. Years of experience ≠ Better skills
I’ve met people with different levels of experience and I’m 100% certain that experience is not a determinant of how much people know or which skills they have.
Of course, there will be a difference between people with 1 month and 2 years experience, but we couldn’t say the same about a person who has worked as a programmer for 2 years and another who has worked for 5 years.
There are so many different factors to consider when determining a developers skill level such as how many projects they have worked on and completed or how many different problems they’ve effectively solved in their projects. It more important to see someones code and draw conclusions from that, rather than looking at their years of experience. A developer's code is the best way to determine their skill level!
5. Follow your passion!
I’ve heard different opinions about this. I’ve heard people say “It’s just a job! Pick a place where you can earn the most money,” but on the other hand, I think it’s important to feel good with the work you’re doing. It’s much easier to be good at your job when it’s something you are passionate about, rather than working in an environment you aren’t keen on or doing a job you don’t like.
This is especially true if you’re thinking about longevity. If you’re thinking about the long-term, it’s better to develop your skills in an area that you enjoy, but also in an environment that will help you to improve your skills and gives you the creative freedom to learn new ones.
When will I be a Senior iOS Developer?
In some cases, it could take 2 years to become a Senior Developer, in other cases, it could take 10 months or 10 years. I haven’t discovered the “golden mean” on how to achieve this and I’m pretty sure becoming a Senior Developer isn’t the most important thing anyway.
It should be a step by step process that happens naturally. If you feel that your current company limits you, for example, you don’t have time to write unit tests, or you haven’t even heard of them, don’t waste your time! You’re better off finding another employer.
Remember that being a Senior Developer is NOT connected with knowing 23 popular libraries, the ability to recite programming rules like SOLID from your head or just working 10 years for X company. In my opinion, the things that define you as a Senior Developer are the skills to solve complex problems in a simple way and sharing knowledge with other teammates.
Maybe this all sounds like a motivational speech but it’s based on my personal experience over the past 4 years. If you can develop these soft skills in the early stages of your journey to becoming an iOS developer, then you will grow into a strong developer more quickly and you’ll be using your time more efficiently.