1.1
Muốn theo nghề lập trình bắt đầu từ đâu - một góc
nhìn từ “Khảo sát của Stack Overflow 2020”
1.1.1
Về Stack Overflow
– Là một mạng xã hội lớn, uy tín của các lập trình viên trên
thế giới
– Giúp các lập trình viên tìm kiếm giải pháp cho các vấn đề
gặp phải trong công việc hàng ngày; là nơi mỗi cá nhân thể hiện trình độ của
mình thông qua việc giúp đỡ các đồng nghiệp khác; tuyển người làm và tìm việc
làm
– Jeff Atwood và Joel Spolsky (người Mỹ) sáng lập Stack
Overflow năm 2008
– Hơn 50 triệu lượt người truy cập mỗi tháng, trên 14 triệu câu hỏi,
trên 19 triệu trả lời (số liệu 2018)
– Thực hiện các khảo sát hàng năm từ các lập trình viên
đang làm việc tại nhiều quốc gia và vùng lãnh thổ (năm 2020 có 65,000 người
tham gia trả lời khảo sát)
– Nội dung khảo sát liên quan đến ngành lập trình.
1.1.2
Nên chọn công việc nào để theo học[1]
Bảng sau là một số công việc phổ biến của nghề lập trình, đồng
thời cho biết tỉ lệ của mỗi công việc dựa trên số người được khảo sát. Tham khảo
để chọn sẽ theo học cái gì? Thông thường, nên chọn công việc có nhiều người
đang làm, tức thị trường đang cần nhiều. Hoặc có người đang làm nghĩa là có nhu
cầu tuyển dụng, vì vậy học cái gì cũng được, nếu thực sự đam mê. Tuy nhiên, nếu
chưa thử hết các công việc làm sao biết mình thích cái nào hơn cái nào? Vì vậy
các bạn cần có người tư vấn hoặc tự trải nghiệm.
Loại
công việc |
Tỉ
lệ |
Loại
công việc |
Tỉ
lệ |
Back-end developer |
55.2% |
QA or test developer |
8.0% |
Full-stack developer |
54.9% |
Data engineer |
7.6% |
Front-end developer |
37.1% |
Academic researcher |
7.2% |
Desktop or enterprise applications developer |
23.9% |
Educator |
5.9% |
Mobile developer |
19.2% |
Game or graphics developer |
5.6% |
DevOps specialist |
12.1% |
Engineering manager |
5.5% |
Database administrator |
11.6% |
Product manager |
5.1% |
Designer |
10.8% |
Scientist |
4.2% |
System administrator |
10.6% |
Site reliability engineer |
3.9% |
Embedded applications or devices developer |
9.6% |
Senior executive |
2.7% |
Data or business analyst |
8.2% |
Marketing or sales professional |
1.3% |
Data scientist or machine learning specialist |
8.1% |
|
|
1.1.3
Mức lương của mỗi công việc
Ngoài yếu tố dễ xin việc, hợp với đam mê của bản thân, cũng
nên quan tâm tới mức lương của mỗi công việc. Tất nhiên, lương cao thì đòi hỏi
trình độ, kinh nghiệm, áp lực công việc cũng cao. Lưu ý: bảng lương dưới đây
không phải trả cho các lập trình viên tại Việt Nam.
Loại
công việc |
Mức
lương |
Loại
công việc |
Mức
lương |
Engineering manager |
$92,000 |
System administrator |
$54,000 |
Site reliability engineer |
$80,000 |
Back-end developer |
$53,000 |
DevOps specialist |
$68,000 |
QA or test developer |
$53,000 |
Data engineer |
$65,000 |
Database administrator |
$50,000 |
Data scientist or machine learning specialist |
$58,000 |
Game or graphics developer |
$50,000 |
Embedded applications or devices developer |
$57,000 |
Front-end developer |
$49,000 |
Scientist |
$57,000 |
Educator |
$49,000 |
Desktop or enterprise applications developer |
$56,000 |
Designer |
$47,000 |
Data or business analyst |
$55,000 |
Mobile developer |
$43,000 |
Full-stack developer |
$54,000 |
Academic researcher |
$41,000 |
1.1.4
Chọn công nghệ nào để theo
Với mỗi công việc có thể lựa chọn nhiều công nghệ khác nhau,
bao gồm: ngôn ngữ lập trình, cơ sở dữ liệu, mã nguồn mở hay đóng, trình viết
mã, framework, thư viện.
Ngôn ngữ
Bảng dưới đây là danh sách các ngôn ngữ phổ biến đang được mọi
người sử dụng,
Ngôn
ngữ |
Tỉ
lệ |
Ngôn
ngữ |
Tỉ
lệ |
JavaScript |
67.7% |
Objective-C |
7.3% |
HTML/CSS |
63.1% |
Go |
7.2% |
SQL |
54.7% |
Ruby |
7.1% |
Python |
44.1% |
Assembly |
6.2% |
Java |
40.2% |
VBA |
6.1% |
Bash/Shell |
33.1% |
Swift |
5.9% |
C# |
31.4% |
R |
5.7% |
PHP |
26.2% |
Rust |
5.1% |
TypeScript |
25.4% |
Object-C |
4.1% |
C++ |
23.9% |
Dart |
4.0% |
C |
21.8% |
Scala |
3.6% |
Go |
8.8% |
Perl |
3.1% |
Kotlin |
7.8% |
Haskell |
2.1% |
Swift |
8.3% |
Julia |
0.9% |
Cơ sở dữ liệu
Bảng dưới đây là danh sách các cơ sở dữ liệu phổ biến đang
được mọi người sử dụng,
Cơ
sở dữ liệu |
Tỉ
lệ |
Cơ
sở dữ liệu |
Tỉ
lệ |
MySQL |
55.6% |
Oracle |
16.5% |
PostgreSQL |
36.1% |
Firebase |
14.4% |
SQL Server |
33.0% |
Elasticsearch |
13.8% |
SQLite |
31.2% |
DynamoDB |
7.1% |
MongoDB |
26.4% |
Cassandra |
3.3% |
Redis |
18.3% |
IBM DB2 |
2.9% |
MariaDB |
16.8% |
Couchbase |
1.9% |
Framework, thư viện,
công cụ
Bảng dưới đây là danh sách các framework, thư viện, công cụ
phổ biến đang được mọi người sử dụng,
Framework,
thư viện, công cụ |
Tỉ
lệ |
Framework,
thư viện, công cụ |
Tỉ
lệ |
Node.js (JS) |
51.4% |
Unity 3D |
10.9% |
.NET (C#) |
35.1% |
Cordova (mobile) |
6.0% |
.NET core (C#) |
26.7% |
Xamarin (mobile, C#) |
5.8% |
Pandas (Python) |
15.5% |
Apache Spark |
5.2% |
TensorFlow (Machine Learning) |
11.5% |
Torch/PyTorch (deep learning – python) |
4.6% |
React Native (JS) |
11.5% |
Hadoop (java, ứng dụng phân tán) |
4.5% |
Ansible |
7.3% |
Unreal Engine |
3.3% |
Flutter (mobile SDK) |
7.2% |
Puppet |
2.3% |
Teraform |
6.2% |
Chef |
1.8% |
Keras (deep learning) |
6.2% |
|
|
Framework, thư viện,
công cụ trong lĩnh vực web
Bảng dưới đây là danh sách các framework, thư viện, công cụ
phổ biến đang được mọi người sử dụng trong lĩnh vực web.
Framework,
thư viện, công cụ |
Tỉ
lệ |
Framework,
thư viện, công cụ |
Tỉ
lệ |
jQuery (JS) |
43.3% |
Django (Python) |
14.2% |
React (JS) |
35.9% |
Flask (Python) |
14.2% |
Angular (JS) |
25.1% |
Laravel (PHP) |
11.1% |
ASP.NET (C#) |
21.9% |
Ruby on Rails (Ruby) |
7.0% |
Express (JS) |
21.2% |
Symfony (PHP) |
4.4% |
ASP.NET core (C#) |
19.1% |
Gatsby (JS) |
4.0% |
Vue (JS) |
17.3% |
Drupal (PHP) |
3.2% |
Spring (Java) |
16.4% |
|
|
Trình viết mã
Dưới đây là các trình soạn thảo mã nguồn (IDE, code editor)
đang được mọi người sử dụng.
IDE/code
editor |
Tỉ
lệ |
IDE/code
editor |
Tỉ
lệ |
Visual Studio Code |
|
PHPStorm |
|
Visual Studio |
|
NetBeans |
|
Notepad++ |
|
IPython / Jupyter |
|
Sublime Text |
|
Emacs |
|
Vim |
|
Rstudio |
|
IntelliJ |
|
RubyMine |
|
Android Studio |
|
TextMate |
|
Eclipse |
|
Coda |
|
Atom |
|
Komodo |
|
PyCharm |
|
Zend |
|
Xcode |
|
Light Table |
|
Các nhóm công nghệ
liên quan
Hình sau là các nhóm công nghệ liên quan,
Một số hướng đang được
quan tâm nhiều
– Web
– Mobile
– IoT
– AI (Artificial Intelligence)
– Big data
– Cloud computing (Elastic cloud)