What skills does an iOS developer need to get well settled?
The head of iOS development for the vani2 robots and the leading iOS developer firmach told what hard and soft skills are needed to work in Redmadrobot and other large companies on Live Stream c Contented. For those who missed or prefer letters, write down the most valuable.
What hard skills does an iOS developer need in order to get a junior job?
Vanya: Hard skills mean skills to perform a specific job as a developer: knowledge of programming languages and algorithms, operating system principles. In our understanding, the junior mobile iOS development is a person with minimal knowledge of the Swift platform and language. If a person already has commercial experience in application development, then it will probably already be a middle developer.
Roma: We compiled a program for the course “ iOS Developer»Based on the skills that will be needed for employment. We wanted to give the person the knowledge with which he will be able to assemble the current application, get an interview and get into the company. These are skills for developing an interface, creating simple animations, working with the network, receiving and displaying data, and an idea of data encryption.
And soft skills?
Vanya: In companies, in addition to hard skills, an employee is required to have good verbal and written communication. You also need to try to be proactive: you cannot perform the task of sitting on the spot, wait for something to happen, explain everything and tell you. You need to think critically about the applications that you develop, even when they do not require it from you. It is necessary to treat the application as your own project.
At the interview, we, of course, first of all look at the hard-skills. But what's the point of taking a cool programmer with poorly developed soft skills? The rest of the team simply will not work with him and the project may not go where the team wants.
Roma: We are waiting for proactive people who follow the industry and trends, look at WWDC every year. It should be understood that Redmadrobot were originally a design studio, and the direction of development appeared later. Therefore, we like it when our developers also understand something in design and are not without taste.
How is the interview, and what test task do you give to developers?
Roma:Five years ago, when I settled in Redmadrobot, I was given the task to do Instagram. Then there, of course, there were no masks and Stories. I made an application with similar functionality: photos, comments, likes. In principle, we now expect that the middle developer can do something like this.
Now we do not have a test, candidates pass through several stages of oral interviews. We ask questions to find out if the candidate is ready for the job.
Vanya: We look at how a person will behave in stressful situations. When the candidate talks about his previous work experience, the tasks that he solved, we ask what he would do if he had only one day for this task. We are looking at whether he would be able to negotiate with the managers and the team, change the deadlines or the type of task.
What to do with difficult questions at the interview?
Vanya: Do not be upset if you have not been interviewed. You may know 80 percent, and they will ask about the other 20. But even if you don’t answer half of the questions, the company can hire you. Many specifically ask difficult questions to understand how you will reason and search for a solution.
Roma: I got to work with robots from the second time. At first I tried to get into the company when I still had no experience with iOS development, then I learned a little and came back.
Vania:I also got to work only the second time. I spent a couple of months studying the iOS development myself, worked on the project with my friends and tried to get a job with a junior, but then only the middle ones were required. A year later, I reached the middle level, and they took me.
How is teamwork built?
Vanya: The team of robots consists of a manager, developer, designer and analyst. Depending on the project, different developers are connected: iOS, Android, Backend.
When we understand which application we need, the preparatory part begins: the analysts collect all the necessary information, the designers make a prototype and detail it, then the developers enter.
We work on AGILE: we take a certain number of tasks, evaluate them, work on them for a couple of weeks, and then do a preliminary assembly of the application, test, fix defects and make a release in the App Store. Then we take new tasks and the sprint is repeated.
Roma: Often we focus on the customer’s workflow. They may have their own terms, for example, sprints may take not a couple of weeks, but a month. Or sometimes the team can work from the customer’s office.
Can I get a job at Redmadrobot after training on an iOS developer course?
Vania:I check the work of students who are now studying on the course, and I can say with confidence that they are full-fledged junior developers. As a rule, we cannot afford to hire juniors for work, but we have winter internships where we can potentially take them. And after the internship there is every chance to get into our team.
How to get a winter internship?
Vanya: This year we will probably have the fifth winter internship already. First, we collect applications from the guys. The maximum set is 10 interns per platform, and applications, as a rule, about 200 per platform.
In the first round, we divide everyone into three groups:
- Without experience
- With little commercial experience, with your own project or freelancing
For the first two groups, our internship is not suitable. Experienced themselves can learn everything without an internship. And people without experience will be too difficult. Why do we need a month or two months to give them a base that you can study on your own or on our online course.
We weed out the unsuitable, and in the second round there are already 30-50 people left. We ask the remaining guys more detailed questions: we ask to show the work, find out what they are interested in, whether there was any teamwork experience. Some people merge at this stage.
As a result, completely different people get on the internship - from midles with annual experience in commercial development to juniors with a project only on GitHub. To get to our team is not even important experience, but how a person tries, how fast he learns.
Some people fall off during the internship. As a result, out of 10 people, about three remain in our team.
What knowledge is needed to start learning on an online course?
Roma: We did a course for people who study or studied in a technical college and have at least some idea of development. If you wrote something on Basic at the institute, then you will be able to complete this course.
Vanya: It is desirable that you know how to program at the minimum level.
Record LIVE STREAM "What skills are needed for the successful work of iOS-developer"