Kỹ năng cần có của một lập trình viên iOS
Bài viết phân tích thống kê từ 50 công ty đang tuyển iOS developer trên ITViec.com, chỉ ra các kỹ năng cần thiết và được yêu cầu nhiều nhất như Swift, Objective-C, kiến thức về iOS SDK, kinh nghiệm phát triển ứng dụng, và các kỹ năng bổ sung như tiếng Anh và React Native. Đây là nguồn tham khảo hữu ích cho người mới bắt đầu học iOS muốn biết cần trang bị những kỹ năng gì để đáp ứng nhu cầu tuyển dụng.

Giới thiệu
Mới học iOS bạn sẽ có thắc mắc là học gì để đáp ứng yêu cầu mà nhà tuyển dụng đề ra. Mình đã lên ITViec.com làm một bài thống kê chi tiết về các kỹ năng cần thiết cho một lập trình viên iOS. Mình thống kê được khoảng 50 công ty đang tuyển iOS.
Nội dung thống kê được lấy từ ITViec.com
Do các job description tiếng Anh, tiếng Việt lẫn lộn, cũng không có cấu trúc gì nên mình phải làm thủ công là liệt kê rồi đếm.
Đa số phần job description sẽ có 3 phần quan trọng, liên quan đến kỹ năng của ứng viên:
-
Kỹ năng/yêu cầu bắt buộc có
-
Kỹ năng nếu có sẽ là lợi thế
-
Số năm kinh nghiệm yêu cầu
Kỹ năng bắt buộc có của lập trình viên iOS
Kỹ năng
Số lượng
49
Thành thạo Objective-C
49
Có bằng đại học/cao đẳng
48
RESTful web service, xử lý JSON,XML
45
Làm việc nhóm
42
Tiếng Anh thành thạo
35
Có app trên AppStore
35
Storyboard, Xib Autolayout
15
Cấu trúc dữ liệu - Giải thuật
15
Unit test
12
Git
12
Multi-threading
11
9
CoreData
8
Hướng đối tượng
8
Thành thạo C++
7
SQLite
7
Realm
7
Tiếng Anh cơ bản
4
Biết Android
4
Swift hoặc Objective-C chắc chắn là bắt buộc. Một số công ty sẽ chỉ tuyển Objective-C hoặc Swift. Nhưng đa số đều chấp nhận cả hai ngôn ngữ này.
Các kỹ năng như làm việc với Web service, JSON; làm việc nhóm; tiếng Anh là bắt buộc phải có.
Ngoài ra, nhà tuyển dụng cũng yêu cầu ứng viên phải có bằng đại học cũng như có ứng dụng trên Appstore.
Số năm kinh nghiệm
Số năm kinh nghiệm
Số lượng
1-3 năm
24
3-5 năm
18
> 5 năm
8
Khoảng một nửa công ty chấp nhập ứng viên ở mức junior khoảng 1-3 năm kinh nghiệm. Những công ty lớn, hoạt động lâu sẽ cần những ứng viên trên 5 năm kinh nghiệm.
Kỹ năng nếu có sẽ là lợi thế
Kỹ năng
Số lượng
Tiếng Anh thành thạo
14
React Native
12
Biết Android
9
Có app trên AppStore
6
Image processing
6
3
3
OpenCV
2
Machine learning
2
DLNA and uPnP
1
Appium
1
Testing skill
1
TFS, SVN
1
Xamarin
1
Photoshop
1
Tiếng Anh thành thạo và React Native là 2 kỹ năng nice-to-have khi ứng tuyển vị trí lập trình viên iOS. Có lẽ nhiều công ty muốn kết hợp kinh nghiệm là app native với React Native làm giảm thời gian phát triển ứng dụng.
Kết
Vì mình làm thủ công nên có thể có sai sót. Mình xin nhấn mạnh đây là thống kê từ job description . Mà HR là người đăng những yêu cầu này. Khi bạn đi phỏng vấn, công ty sẽ có những anh leader, dev hỏi những điều khác so với JD. Ví dụ JD không ghi là hướng đối tượng hay cấu trúc dữ liệu/giải thuật nhưng khi phỏng vấn họ có hoàn toàn có thể hỏi những phần này.
Vì thế bài thống kê này chỉ có tính tham khảo tương đối.
Related Posts
Discover more content you might enjoy

Kinh nghiệm chuyển từ Quality Control sang Business Analyst với Hoàng Phan
Bài phỏng vấn chia sẻ kinh nghiệm chuyển đổi từ vị trí Quality Control (QC) sang Business Analyst (BA) của Hoàng Phan. Nội dung bao gồm các kỹ năng cần có của BA, sự khác biệt giữa hai vị trí, cách kỹ năng QC hỗ trợ cho công việc BA, và lộ trình phát triển nghề nghiệp. Bài viết cung cấp góc nhìn thực tế về quá trình chuyển đổi nghề nghiệp trong ngành công nghệ thông tin.

Game Theory trong thời đại AI: Khi máy móc tham gia vào "trò chơi"
Bài viết phân tích sự giao thoa giữa lý thuyết trò chơi (Game Theory) và trí tuệ nhân tạo, giải thích cách AI đang thay đổi các nguyên lý cân bằng Nash và chiến lược tối ưu. Tác giả đưa ra các ví dụ thực tế về ứng dụng trong kinh doanh, giao thông và an ninh mạng.

Bài này không phải AI viết
Suy ngẫm chân thành về giá trị của việc viết thủ công trong kỷ nguyên AI. Dù AI có thể tạo nội dung hiệu quả, bài viết này là lời khẳng định về sự kết nối cá nhân và giá trị độc đáo mà con người mang lại cho văn bản của mình.

Dự đoán về Vibe Coding: Cách AI sẽ biến đổi việc tạo ra phần mềm
Bài viết phân tích cách 'vibe coding' - phương pháp lập trình dựa trên mô tả ý định thay vì viết code trực tiếp - sẽ dân chủ hóa việc phát triển phần mềm. Tác giả dự đoán về sự chuyển đổi từ giao diện dòng lệnh sang thiết kế trực quan, sự xuất hiện của phần mềm tự cải thiện, và tác động đến cấu trúc tổ chức công ty cũng như các thị trường ngách chưa được khai thác.

Day 11 - Profitable MVP in 30 Days - Bế tắc với những ý tưởng mới
Bài viết ngày 11 của thử thách xây dựng MVP có lợi nhuận, tác giả chia sẻ về việc tìm kiếm ý tưởng mới sau khi gặp khó khăn với sản phẩm đầu tiên. Bài viết giới thiệu ý tưởng Reading Tracker - công cụ giúp người dùng tạo, quản lý và chia sẻ danh sách sách đã đọc, với các tính năng như đồng bộ từ Goodreads, tự động hoàn thành khi nhập và tích hợp liên kết tiếp thị liên kết Amazon.

Bitcoin Domain (.btc) là gì? Cách mua như thế nào?
Tìm hiểu về Bitcoin Domain (.btc) và cách mua domain này