Việc làm phần mềm

GS John Vu16/04/2026 13:00
Việc làm phần mềm

“Tôi học về khoa học máy tính, tốt nghiệp năm 2006 sau đó làm việc cho công ti đầu tư và thương mại chứng khoán. Sáu tháng qua tôi thất nghiệp, liệu tôi có thể kiếm được việc làm trong công nghiệp phần mềm? Thầy có nhắc tới việc thiếu hụt người làm phần mềm, nếu tôi muốn làm việc ở Mĩ thì làm sao tôi có thể kiếm việc làm ở đó? Tôi cần có loại kĩ năng nào?”

Câu trả lời của tôi: “Mặc dù bạn có bằng cấp máy tính nhưng mọi sự đã thay đổi kể từ khi bạn tốt nghiệp và thị trường việc làm cũng có nhu cầu khác do tốc độ công nghệ thay đổi. Nếu bạn muốn làm việc trong ngành công nghiệp phần mềm, bạn có thể phải kiểm điểm lại kĩ năng tính toán của mình để xác định liệu bạn có cần quay lại trường để đào tạo lại không. Có thể là bạn quên mất bạn đã học gì trong trường vì bạn chưa bao giờ làm việc trong phần mềm. Bên cạnh kĩ năng lập trình như C, C++, C# và Java, bạn có thể cần kiểm điểm lại tri thức của mình về vòng đời phát triển phần mềm. Ngày nay, công nghiệp cũng yêu cầu những phương pháp luận và kĩ năng nào đó liên kết với phát triển web. Điều quan trọng là bạn kiểm tra với các công ti phần mềm nơi bạn sống để xác định loại kĩ năng nào họ cần, điều thực tế là bao giờ cũng bắt đầu tại nơi bạn sống trước khi nhìn đi đâu đó khác. Nếu bạn muốn làm việc cho công ti nước ngoài hay muốn làm việc ở Mĩ thì bạn cần có kĩ năng trao đổi rất tốt, đặc biệt là trong tiếng Anh. Dựa trên điều tôi biết, phần lớn các công ti nước ngoài chỉ chọn các ứng viên từ một số đại học mà họ đã biết tới và có mối quan hệ tốt. Tuỳ theo danh tiếng của trường mà bạn tốt nghiệp, bạn có thể được xem như ứng cử viên cho vị trí đó. Hiện thời có vài xu hướng đang nổi lên mà bạn có thể cần biết:

  1. Web như nền phát triển: Trình duyệt web cung cấp môi trường tốt khi chạy và truy nhập vào nhiều ứng dụng. Ngày nay nhiều công ti phần mềm đang chọn web làm nền chọn lựa của họ cho phát triển phần mềm. Phát triển web là rất phổ biến và có nhiều công cụ phát triển tốt, và công cụ thiết kế cho web mà bạn cần biết. Bạn cũng cần học về thư viện JavaScript vì nó cho phép người phát triển có nhiều việc được thực hiện với JavaScript hơn trước đây. Điều quan trọng với bạn là có tri thức về ứng dụng internet, như các ứng dụng viết cho Silverlight, Flash điều cho phép người phát triển bẻ tự do các giới hạn của HTML và lấy ưu thế của miền tài nguyên và tính năng trong khi vẫn đảm bảo tương hợp qua các nền.
  2. Tính toán mây: Bạn có thể học thêm về phần mềm như dịch vụ Software as a Service (SaaS) và tính toán mây – Cloud Computing vì đây là khu vực bùng nổ cho phép các công ti thúc bẩy tài nguyên tính toán bằng việc đi thuê thay vì mua. Nó cũng cho phép công ti tăng qui mô để giải quyết vấn đề tải việc trên đỉnh và tránh tổng phí quản lí kết cấu nền phần cứng. Tính toán mây cũng giúp tính toán với chi phí hợp lí và dự đoán được. Bạn có thể cần hiểu thêm về Windows Server, Windows Azure, SQL Azure, MySQL, và các dịch vụ như Windows Live, Office, và Xbox Live bởi vì có một số nhu cầu trong khu vực này.
  3. Phát triển mau lẹ  Agile: Là người phát triển, bạn phải biết phương pháp này, kể cả Scrum, Lập trình cực đoan, phát triển được dẫn lái bằng kiểm thử, và tích hợp liên tục. Những phương pháp phát triển này thường được dùng bằng cách tổ hợp với các phương pháp phát triển phần mềm khác. Nhiều công ti ở Mĩ đang dùng Agile ngày nay cho nên nếu bạn muốn làm việc cho công ti Mĩ, bạn cần biết rõ Agile.
  4. Ứng dụng di động: Với việc tăng tính sẵn có của nhiều thiết bị di động kết nối với internet (như, điện thoại Smart phone, I-phone, Android, và Window 7 phone), phần lớn người dùng muốn truy nhập và tương tác với dữ liệu theo những cách thích hợp với năng lực của thiết bị di động của họ. Tôi trông đợi loại tri thức và kĩ năng này sẽ sớm được cần tới trên mọi thiết bị di động cho nhiều công ti viễn thông nơi người dùng có thể truy nhập căn cước và dữ liệu trực tuyến một cách dễ dàng và an ninh trên mọi thiết bị di động. Ngày nay, Microsoft cũng cung cấp truy nhập vào dữ liệu của người dùng thông qua Windows Live và Xbox LIVE.  Với sự sinh sôi nảy nở của nhiều thiết bị thế sẽ có nhu cầu lớn về những người có kĩ năng này. Windows 7 có nhiều giao diện và ứng dụng hỗ trợ cho ứng dụng có khả năng chạm trong nền di động. Silverlight và WPF cũng có tương tác dựa trên camera và đa chạm, như MFC có.
  5. Làm việc tổ và kĩ năng mềm:  Bên cạnh kĩ năng kĩ thuật, bạn cần các kĩ năng khác như kĩ năng trao đổi, kĩ năng làm việc tổ. Ngày nay việc phát triển phân bố tạo khả năng cho các thành viên tổ làm việc chặt chẽ mặc cho phân tách địa lí với nhau. Với toàn cầu hoá, nhiều công ti đang thuê người ở nhiều chỗ khác nhau đưa các tài năng toàn thế giới làm việc hướng tới dự án hay mục đích chung.  Khả năng của thành viên tổ làm việc qua múi thời gian và biên giới đang trở thành quan trọng cho nên bạn có thể cần phải học nhiều nhất có thể được về làm việc theo tổ. Có nhiều hoạt động tổ như kiểm điểm mã phân bố, lập trình theo cặp từ xa, cộng tác người phát triển / người kiểm thử và chia sẻ tài nguyên.

Ý nghĩ cuối cùng của tôi: Nếu bạn nghiêm chỉnh về công nghiệp phần mềm, xin hãy học nhiều nhất có thể được, đọc nhiều nhất có thể được về bất kì chủ đề nào bạn quan tâm. Tôi tin công nghiệp phần mềm sẽ tiếp tục trưởng thành và bành trướng ra mọi nơi và với sự thiếu hụt kĩ năng hiện thời, nhiều công ti sẽ phải vươn tới chỗ có tài năng. Cho nên hãy được chuẩn bị và sẵn sàng nhận thách thức mới bất kì khi nào nó tới.

Chúc bạn may mắn trong tìm việc làm.

English version

Software jobs

I received an email where the sender wrote: “I am a computer science major who graduated in 2006 but since I worked for an investment and stock trading company. I am unemployed for the last six months so I just wonder if it is possible for me to get a job in software industry? Since you have mentioned about a shortage of software people globally, if I want to work in the U.S how can I get a job there? What kind of skills do I need?

My answer: “Although you have a computer degree but things have changed since you graduated and the job market also has different needs due to the speed at which technology changes. If you want to work in the software industry, you may want to review your computing skills to determine whether you need to go back to school for retraining. It is possible that you may forget what you have learned in school since you never work in the software. In addition to programming skills such as C, C++, C# and Java, you may need to review your knowledge about software development life cycles. Today, the industry also requires knowledge in certain methodologies and skills associated with web development. It is important that you check with software companies where you live to determine what kind of skills that they need, it is always practical to start where you live first before looking elsewhere. If you want to work for foreign companies or want to work in the U.S then you need to have very good communication skills, especially in English. Based on what I know, most foreign companies only select applicants from certain universities that they already know and have good relationship with. Depend on the reputation of the school that you graduated, you may be considered as candidate for the position. Currently there are several trends that are emerging that you may need to know:

  1. The Web as a development platform: The web browser provides a good runtime environment and access to many applications. Today many software companies are choosing the web as their platform of choice for software development. Web development is very popular and there are many good development tools, debugging tools, and designing tools for the web that you need to know. You also need to learn about JavaScript libraries since it allows developers to get more done with JavaScript than ever before. It is important for you to have knowledge on internet applications, such as those written for Silverlight, Flash that allows developers to break free of the limitations of HTML and take advantage of a range of resources and features while guaranteeing compatibility across platforms.
  2. Cloud Computing: You may want to learn more about Software as a Service (SaaS) and Cloud Computing since this is a booming area that allows companies to leverage computing resources by rental rather than buying. It also allows company to scale up to handle peak loads and avoid the overhead of managing hardware infrastructures. Cloud computing also help keep computing at a reasonable and predictable cost. You may need to understand more about Windows Server, Windows Azure, SQL Azure, MySQL, and services such as Windows Live, Office, and Xbox Live because there are some needs in this area.
  3. Agile development: As developers, you must know this method, including Scrum, Extreme programming, Test-driven development, and Continuous integration. These are commonly used often in combination with other software development methods. Many companies in the U.S are using Agile today so if you want to work for a U.S company, you need to know Agile well.
  4. Mobile applications: With the increasing availability of many mobile devices that connect to the internet (i.e., Smart phone, I-phone, Android, and Window 7 phone), most users want to access and interact with data in ways that are appropriate to their mobile devices’ capabilities. I expect this kind of knowledge and skills will be needed for many telecommunication companies soon where users can access online identities and data easily and securely on all mobile devices. Today, Microsoft also provides access to users’ data via Windows Live and Xbox LIVE.  With the proliferation of so many devices there will be a great needs for people to have this skills. Windows 7 has many interfaces and applications that support for touch-enabled applications in the mobile platform. Silverlight and WPF also allow camera-based interactions and multi-touch, as has MFC.
  5. Teamwork and Soft-skills:  Beside technical skills, you do need other soft skills such as communication skills, teamwork skills. Today distributed development enables team members to work closely despite geographic separation from each other. With globalization, many companies are hiring people in different places and bringing together worldwide talent to work toward a common project or goal.  The ability of team members working across time zones and borders is becoming important so you may need to learn as much as possible about teamwork. There are many team activities such as distributed code reviews, remote paired programming, developer/tester collaboration and resource sharing.

My final thought: If you are serious about the software industry, please learn as much as possible about, read as much as you can on whatever topics that interested you. I believe the software industry will continue to grow and expand everywhere and with the current skills shortage, many companies will have to reach out to where talents are. So be prepared and ready to take on new challenges whenever it comes.

Good luck on your job search.

 


Gửi bình luận
(0) Bình luận
1

Cơ hội nghề nghiệp

Công nghệ thông tin (CNTT) là lĩnh vực lớn nơi mọi người có thể xây dựng chuyên môn nghề nghiệp riêng của họ theo nhiều cách.
2

Vòng đời kiểm thử

Nhiều người trong các bạn đã hỏi tôi về kiểm thử và mối quan hệ của nó với vòng đời phát triển phần mềm. Về căn bản kiểm thử tuân theo vòng đời tương ứng với mọi pha của vòng đời phát triển.
3

Quy trình phần mềm

Tôi nhận được một email mà người gửi hỏi: “Khác biệt giữa qui trình phần mềm và qui trình được xác định là gì? Khác biệt giữ qui trình được xác định và qui trình cá nhân là gì?”
4

Dự án phần mềm thành công

Một sinh viên hỏi tôi: Làm sao thầy biết liệu dự án phần mềm là thành công hay không? Nếu phần mềm chạy tốt, nó có là thành công không? Nếu mã qua được mọi kiểm thử nó có là thành công không?”
5

Xem xét trường sau đại học

Tuần trước, một học sinh gửi cho tôi một email: “Em sẽ sớm tốt nghiệp và xem xét vào trường sau đại học nhưng em vẫn không chắc về học cái gì hay liệu vào trường sau đại học có là quyết định đúng hay không. Em cũng không chắc liệu em có nên vào trường địa phương hay đi học nước ngoài để có bằng cấp cao. Xin thầy lời khuyên.”

Kỹ năng nào đang cần?

Tôi gặp Steve Smith trên chiếc máy bay từ Thượng Hải tới San Francisco. Steve là người quản lí nhân lực về thuê kĩ sư từ hải ngoại cho công ti phần mềm lớn của Mĩ. Anh ấy bảo tôi:

Phần mềm như thị trường dịch vụ

Khi tình huống tài chính toàn cầu vẫn còn trong trạng thái bất định, các công ti đang tìm kiếm cách tốt hơn để giảm chi phí công nghệ thông tin và Phần mềm như dịch vụ (SaaS) là một trong những giải pháp mà nhiều công ti đang tìm kiếm.

Công nghệ thông tin tài chính đang nóng

Theo cuộc điều tra mới đây của chính phủ Mĩ, năm nay các công ti tài chính và ngân hàng đang thuê nhiều người làm về công nghệ thông tin (CNTT) hơn các sinh viên tốt nghiệp kinh doanh.

Dự án phần mềm lớn

Ngày nay, phần lớn các dự án phần mềm đều lớn, phức tạp, và tổ dự án thường bao gồm nhiều người với các vai trò và nhiệm vụ khác nhau.

Phần mềm như dịch vụ tuyệt hảo

Nhiều người không phân biệt rõ rệt sự khác biệt giữa “Phần mềm như sản phẩm” và “Phần mềm như dịch vụ”. Như dịch vụ, phần mềm cần ba điều: mong đợi, nhất quán và thông cảm.

Phần mềm ở Trung Đông

Tôi mới dành một tuần giảngi ở Carnegie Mellon tại Qatar rồi đi tới Riyadh, thủ đô của Saudi Arabia để thăm một số sinh viên cũ.

Tình hình khoán ngoài

Trường kinh tế London đưa ra báo cáo ‘Bên ngoài BRIC – Thuê nước ngoài ở các nước không thuộc BRIC: Ai Cập – một thị trường tăng trưởng mới’. Nhiều người bị bất ngờ bởi viễn tượng về nghiên cứu toàn cảnh của nghiên cứu nhìn ra bên ngoài BRIC, đã có nhiều đồn đoán rằng Ấn Độ đang mất sự nắm giữ sắt của nó vào công nghiệp khoán ngoài cho nên báo cáo này đưa ra đã là điều cay đắng.

Thị trường khoán ngoài

Thị trường khoán ngoài phần mềm tiếp tục thay đổi khi nhiều nước đi vào cạnh tranh. Theo hãng tư vấn KPMG, năm nay Trung Quốc đã thay thế Ấn Độ như “chọn lựa hàng đầu” cho khoán ngoài phần mềm và có thể là đến trước năm 2014, thị trường khoán ngoài của Trung Quốc có thể làm ra $43.9 tỉ đô la.

Bạn không cần thêm thành tựu đâu, điều bạn cần là nghỉ ngơi

Suy ngẫm - TĐ - 10/07/2026 11:00
 Có những người dành cả tuổi trẻ để thoát khỏi nghèo khó, nhưng rồi khi đã bước ra khỏi nó, họ lại không biết làm thế nào để dừng việc “sống sót”.

Thành công ở đại học

Blog GS John VU - GS John Vu - 10/07/2026 10:00
Thành công nghĩa là đạt tới mục đích của bạn, dù chúng là bất kì cái gì.

Cuộc sống bình dị thích mặc đồ cũ, ăn cơm bụi của 'tượng đài điện ảnh' Châu Nhuận Phát

Phong cách sống - Ngọc Thanh - 10/07/2026 09:00
Dù nắm trong tay khối tài sản khổng lồ, tài tử Châu Nhuận Phát vẫn giữ lối sống giản dị đến mức khó tin.

‘Không khóc giữa nhân gian’ - Học cách bình yên đi qua nỗi buồn

Từ sách - Phim - FN - 10/07/2026 08:00
​​​​​​​Chúng ta lầm tưởng rằng sở hữu càng nhiều thì càng hạnh phúc, nhưng đâu ngờ càng nắm chặt, càng mong cầu thì khổ lụy càng chất chồng.

Cách đo

Blog GS John VU - 09/07/2026 11:00
Tôi nhận được một email từ một sinh viên: “Tại sao chúng ta phải đo công việc của mình? Đo là khó và phí thời gian vì nó không cung cấp cho tôi giá trị. Nếu chúng ta có lỗi, chúng ta có thể sửa chúng về sau bất kể chúng có bao nhiêu. Tôi không biết tại sao chúng ta cần đo?”

Bạn không cần phải hòa hợp với tất cả mọi người

Suy ngẫm - PV - 09/07/2026 10:00
Bạn không cần phải hòa hợp với tất cả mọi người, và thậm chí bạn cũng không cần phải chú ý đến hầu hết mọi người.

Khương Bình, người từng được ca ngợi là "thiên tài toán học" và điều đáng để suy ngẫm

Phong cách sống - PV - 09/07/2026 09:00
Không có tin vui nhận giải, cũng chẳng có tranh cãi mới, chỉ một đoạn video ghi lại cảnh doanh nghiệp địa phương đến tận nhà thăm hỏi đã một lần nữa kéo cô gái từng đứng nơi đầu sóng ngọn gió dư luận này quay trở lại trong tầm mắt của công chúng.

Không khóc giữa nhân gian - Chỉ cần sống thật với mình

Từ sách - Phim - PV - 09/07/2026 08:00
Đôi khi, ta phải chọn buông tay ai đó – không phải vì hết thương, mà để vá lại những niềm tin rách rưới trong cuộc đời mình.

Vòng đời kiểm thử

Blog GS John VU - GS John Vu - 08/07/2026 11:00
Nhiều người trong các bạn đã hỏi tôi về kiểm thử và mối quan hệ của nó với vòng đời phát triển phần mềm. Về căn bản kiểm thử tuân theo vòng đời tương ứng với mọi pha của vòng đời phát triển.

Giàu có và đẹp trai, vậy mà vẫn không thể chinh phục được trái tim cô ấy

Suy ngẫm - PV - 08/07/2026 10:00
Đừng ngây thơ. Không phải bạn không đủ tốt, mà là bạn chưa nắm bắt được ba điểm mấu chốt này.

Sống với nghề viết thuê hơn 100.000 lá thư suốt 59 năm

Phong cách sống - Nguyệt Anh - 08/07/2026 09:00
Gần 60 năm qua, ông Jiang Mingdian (Trung Quốc) đã viết hơn 100.000 lá thư thay cho các gia đình có người thân ở nước ngoài, trở thành một trong những người viết thư thuê cuối cùng còn hoạt động.

'Không khóc giữa nhân gian' vì ta đã học được cách đi qua nỗi buồn

Từ sách - Phim - PV - 08/07/2026 08:00
“Không khóc giữa nhân gian” là quyển sách nhỏ được Đại đức Thích Đồng Tâm viết từ những ngày lòng trải qua những chông chênh của kiếp nhân sinh để gửi tới những “Người thương”, và cũng chính từ đó mà Đại đức học được cách mỉm cười đi qua dông bão bằng một tâm bình an hơn mỗi sớm mai thức dậy.

Quy trình phần mềm

Blog GS John VU - GS John Vu - 07/07/2026 11:00
Tôi nhận được một email mà người gửi hỏi: “Khác biệt giữa qui trình phần mềm và qui trình được xác định là gì? Khác biệt giữ qui trình được xác định và qui trình cá nhân là gì?”

Lớp vỏ bọc của những người đàn ông thành đạt

Suy ngẫm - PV - 07/07/2026 10:00
Bạn chỉ thấy vẻ oai phong và quyền lực của họ trước công chúng, nhưng bạn không bao giờ thấy những khó khăn gian khổ của họ phía sau hậu trường.

Nở rộ dịch vụ bán ảnh "phông bạt", từ bữa ăn omakase đến khoang thương gia

Phong cách sống - Việt Anh - 07/07/2026 09:00
Những bức ảnh check-in tại nhà hàng cao cấp, khách sạn hạng sang hay khoang bay thương gia đang được mua bán trên mạng xã hội để phục vụ nhu cầu "sống ảo".
HẠT GIỐNG TÂM HỒN
2019 Bản quyền thuộc về hatgiongtamhon.com.vn. Phát triển bởi ONECMS