Người lập trình hay người phát triển

GS John Vu25/09/2025 13:00
Người lập trình hay người phát triển

Tuần trước tôi nhận được một email hỏi: “Khác biệt giữa người lập trình và người phát triển phần mềm là gì? Người lập trình có thể trở thành người phát triển được không?

Theo “quan điểm thuần tuý”, “người lập trình” là ai đó chỉ viết mã và kiểm thử mã riêng của họ để sửa lỗi. Người lập trình KHÔNG làm việc với khách hàng hay người dùng để viết yêu cầu. Người lập trình KHÔNG giúp kiểm thử hay các trường hợp kiểm thử tự động cho hệ thống. Người lập trình KHÔNG xây dựng hệ thống hay cập nhật hệ thống. Người lập trình KHÔNG viết tài liệu. Mọi điều họ làm là viết mã. Nhiều người lập trình có thể có hay KHÔNG có bằng cử nhân: một số người có thể học vài lớp lập trình ở trường đào tạo đặc biệt. Một số công ti sẽ thuê loại người lập trình này để viết mã bởi vì họ không yêu cầu lương cao và họ không thể đổi việc thường xuyên vì việc làm của họ rất bị giới hạn. Theo ý kiến tôi, người lập trình KHÔNG phải là chọn lựa tốt vì triển vọng tương lai là rất hạn hẹp.

“Người phát triển phần mềm” là ai đó đóng góp theo nhiều cách để làm cho sản phẩm phần mềm thành công. Người phát triển PHẢI LÀ người lập trình trước hết nhưng cũng còn dính dáng tới các khu vực khác như làm việc với khách hàng và người dùng để viết yêu cầu, viết trường hợp kiểm thử cho hệ thống phần mềm, kiểm điểm mã từ người khác, hỗ trợ viết tài liệu, kiểm soát thay đổi với phần mềm bằng việc làm quản lí cấu hình, và nhiều điều nữa. Người phát triển phần mềm có cảnh quan rộng hơn nhiều và có khả năng nhìn bức tranh lớn hơn của toàn thể dự án khi người lập trình chỉ viết mã. Phần lớn việc làm đối với người phát triển phần mềm ở Mĩ và châu Âu đều yêu cầu bằng cử nhân từ đại học được công nhận chính thức.

Tôi KHÔNG tin vào quyết định cô lập người lập trình với mọi thứ mà chỉ có viết mã. Người lập trình phải KHÔNG có cảnh quan hẹp.  Họ CẦN đào tạo để làm cho họ thấy cảnh quan lớn hơn của hệ thống phần mềm. Họ NÊN làm việc với khách hàng và người dùng và đóng góp nhiều hơn cho dự án. Tôi tin người lập trình nên lấy nhiều đào tạo hơn để LÀ người phát triển phần mềm. Có hai lí do mà người lập trình vẫn còn chỉ viết mã: Họ thích viết mã và không muốn làm cái gì khác – đó là chọn lựa của họ. Họ KHÔNG nhận giáo dục và đào tạo đúng vì công ti muốn lấy ưu thế của những người không có giáo dục chính thức hay bằng cấp cho nên công ti có thể trả lương thấp cho họ.

Trong cuộc thăm viếng Ấn Độ năm ngoái, một người quản lí nói với tôi: “Những người lập trình của chúng tôi không biết cách làm các thứ khác và đó là lí do tại sao họ chỉ viết mã.” Tôi hỏi ông ấy: “Ông có chắc đó là điều họ muốn không, nếu họ không biết cách làm các khía cạnh phi mã thì sao ông không dạy cho họ?” Người quản lí này giải thích: “Tại chúng tôi đào tạo cho họ thì họ có thể tìm được việc tốt hơn sao? Với đào tạo hạn chế, họ phải ở lại đây chứ” Tôi không muốn nói gì hơn nữa bởi vì tôi biết rằng công ti này đã trả lương rất thấp cho những người không có giáo dục đại học và đó là lí do tại sao phần lớn người lập trình chỉ viết mã và không làm gì khác. KHÔNG phải là họ không thể làm được gì khác. Chính “kinh doanh tốt” là giữ họ theo cách đó.

Trên khắp Ấn Độ, có hàng nghìn trường đào tạo đặc biệt dạy ngôn ngữ lập trình hay vài chứng chỉ trong các hệ thống đặc biệt, họ KHÔNG yêu cầu bất kì giáo dục nào cho nên họ làm tiền bằng việc tạo ra hàng trăm nghìn người lập trình chỉ có tri thức giới hạn về phần mềm. Những người này KHÔNG có mấy tương lai vì các ngôn ngữ lập trình sẽ thay đổi khi kĩ năng của họ bị giới hạn. Vài năm trước, COBOL và ngôn ngữ Pascal là nóng, nhưng thế rồi tới C và C++, và ngày nay có Java, C#, Ruby và nhiều nữa. Nếu kĩ năng của bạn là trong COBOL và bạn có thể thấy rằng nó không còn được cần tới nữa và bạn có thể không có khả năng tìm ra việc làm. Tất nhiên, có một số người lập trình không muốn làm các thứ khác. Họ chỉ muốn viết mã và hạnh phúc với nghề của mình. Tuy nhiên, tôi tin nếu họ biết rõ hơn, nếu họ có thể thấy mọi khả năng, họ có thể đổi ý.

Đào tạo chính thức ở đại học là rất quan trọng cho những người muốn có nghề nghiệp tốt. Người phát triển tốt có kĩ năng giỏi là quí giá. Với việc thiếu hụt trầm trọng hiện thời về kĩ năng phần mềm trên khắp thế giới, triển vọng là rất tốt để kiếm việc tốt với lương tốt. Nếu bạn là người lập trình và muốn là người phát triển, bạn có thể cần một số tri thức và đào tạo về kĩ nghệ yêu cầu, làm tài liệu yêu cầu, quản lí cấu hình, kiểm điểm mã, kiểm thử, kiểm thử tự động, kiểm thử tích hợp, và hiểu vòng đời phần mềm và một số phương pháp như Agile (Scrum hay lập trình cực đoan) cũng như quen thuộc với một số công cụ phần mềm.

English version

Programmer or Developer

Last week, I received an email asking: “What is the different between a programmer and a software developer? Can a programmer become a developer?

From the “Pure view”, “programmer” is someone who only code and tests their own code to fix defects. Programmer does NOT work with customers or users to write requirements. Programmer does NOT help with testing or write automated test cases for the system. Programmer does NOT build system or update system. Programmer does NOT write documentation. All they do is write code. Many programmers may or may NOT have Bachelor degree; some may only take few programming classes in special training schools. Some companies would hire this kind of programmer to code because they do not require higher salary and they can not change jobs often as their job is very limited. In my opinion, programmer is NOT a good choice as the future prospect is very narrow.

A “Software Developer” is someone who contributes in many ways to make the software product successful. A developer MUST BE a programmer first but also involve in other areas such as working with customers and users to write requirements, write test cases for the software system, review code from others, support documentation, control changes to software by working as configuration management, and many more. Software developer has a much larger perspective and an ability to see the bigger picture of the entire project when the programmer only writes code. Most jobs for software developers in the U.S and Europe require Bachelor degree from an accredited university.

I do NOT believe in the decision to insulate programmers from everything but only code.  Programmers should NOT have a narrow perspective.  They NEED training to make them see the bigger perspective of software system. They SHOULD work with customers and users and contribute more to the project. I believe programmer should take more training TO BE software developer. There are two reasons that programmer stay in coding only: They love to code and do not want to do anything else – that is their choice. They do NOT receive proper education and training as company wants to take advantage of people without formal education or degree so the company can pay them lower salary.

During a visit in India last year, a manager told me: “Our programmers don’t know how to do other things and that is why they only code”. I asked him: “Are you sure that is what they want, if they don’t know how to do the non-coding aspects why don’t you teach them? The manager explained: “Why do we train them then they can find better jobs? With limited training, they have to stay here” I did not want to say anything more because I know that the company paid a very low salary to people without college education and that is why most programmers only code and not doing anything else. It is NOT that they can not do anything else. It is “good business” to keep them that way. All over India, there are thousand special training schools that teach programming language or few certificates in special systems, they do NOT require any education so they make money by produce hundred thousand programmers who only have limited knowledge of software. These people do NOT have much future as programming languages will change as their skills are limited. Few years ago, COBOL and Pascal language were hot, but then come C and C++, and today there are Java, C#, Ruby and many more. If your skill is in COBOL and Pascal, you may find that it is no longer needed and you may not be able to find a job. Of course, there are some programmers don’t want to do other things. They only want to code and happy with their career. However, I believe if they know better, if they can see the potential and all the possibilities, they may change their minds.

Formal training in college is very important to people who want to have a good careers. A good developer with strong skills is precious. With current critical shortage of software skills all over the world, the prospect is very good for getting good jobs with good salaries. If you are a programmer and want to be a developer, you may need some knowledge and trainings on requirements engineering, requirement documentation, configuration management, code reviews, testing, automate testing, integration testing, and understand software life cycle and some methods such as Agile (Scrum or extreme programming) as well as familiar with some software tools.

 


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

Lời khuyên về giáo dục

Theo một nghiên cứu toàn cầu mới, năm nay các công ti sẽ thuê nhiều sinh viên tốt nghiệp đại học hơn năm ngoái nhưng chỉ với những bằng cấp nào đó. Khoa học máy tính, kĩ nghệ phần mềm, y học và chăm sóc sức khoẻ là NÓNG.
2

Công nhân có kỹ năng cho công việc dự án

Mục tiêu then chốt của mọi dự án phần mềm là đáp ứng nhu cầu của khách hàng. Điều khách hàng muốn là tổ dự án chuyển giao sản phẩm tương ứng theo lịch biểu, trong chi phí, và có chất lượng cao. Tuy nhiên, điều quan trọng nhất với nhiều người quản lí dự án là lịch biểu dự án.
3

Phát triển phần mềm Agile

Agile là cách tiếp cận phát triển phần mềm trong đó tổ xây dựng phần mềm trong vài lần lặp ngắn, thay vì mọi thứ đi từ bắt đầu tới kết thúc. Agile cung cấp ích lợi như linh hoạt, dễ thay đổi, chất lượng tốt, ít rủi ro và thoả mãn khách hàng tốt hơn nhưng có “tiền điều kiện” mà tổ chức phải có để đạt tới những ích lợi này.
4

Vấn đề với cách tiếp cận Agile

Một người phát triển phần mềm hỏi tôi: “Người quản lí của tôi nói rằng hoạt động chính của Agile chỉ là viết mã và kiểm thử. Bạn không cần tài liệu cho nên chúng tôi có thể hoàn thanh nhanh và đó là lí do tại sao cái tên “Agile – mau lẹ” tới. Điều đó có đúng không?”
5

Chương trình bằng cấp chuyên sâu

Có vài lí do mà sinh viên muốn tiếp tục theo đuổi các bằng cấp chuyên sâu như Thạc sĩ hay Tiến sĩ. Nhiều người muốn chuyên sâu tri thức của họ và đẩy mạnh giáo dục của họ nhưng một số người không biết làm cái gì, cho nên họ quyết định ở lại trường.

Không đảm đương được nếu không kiểm thử phần mềm

Kiểm thử là cần thiết cho mọi dự án phần mềm.

Quản lý hệ thông tin

Ngày nay Công nghệ thông tin có ở mọi nơi và kiểm soát nhiều thứ, từ doanh nghiệp chế tạo lớn tới doanh nghiệp nhỏ, từ các hệ thống của chính phủ cho tới các hệ thống doanh nghiệp tư.

Thành đạt và tận hưởng

Nhiều sinh viên thường hỏi tôi: em cần thời gian học tập, em cần thời gian với bạn bè, em cần thời gian cho bản thân mình, em cần thời gian với gia đình, em cần thời gian để ngủ. Em tìm đâu ra thời gian để làm mọi việc đó? Làm sao em có thể tạo ra lịch biểu cho mọi hoạt động?

Kiểm thử tích hợp

Ngày nay, các hệ thông tin như lập kế hoạch, quản lý... đều rất lớn và phức tạp nên phải được kiểm thứ cẩn thận.

An ninh tính toán

Không may an ninh thông tin vẫn không được nhiều người phát triển phần mềm xem xét một cách nghiêm chỉnh, hay không được dạy như một môn yêu cầu ở hầu hết các đại học. Khi công nghệ phát triển phổ biến hơn, việc lạm dụng nó trở nên ngày một nghiêm trọng hơn.

Dự báo thị trường khoán ngoài

Theo nhiều nghiên cứu mới, một số địa chỉ khoán ngoài ở Trung và Đông Âu đang có vấn đề khi họ phải cạnh tranh với những địa chỉ mới ở châu Phi, Trung Đông và Đông Nam Á. Lí do đơn giản: Chi phí làm kinh doanh tăng lên.

Đảm bảo chất lượng phần mềm

Khi dự án phần mềm trở nên lớn hơn và phức tạp hơn, vai trò của Đảm bảo chất lượng phần mềm – Software Quality Assurance (SQA) trở nên gay gắt hơn.

Việc làm công nghệ

Với tất cả những không chắc chắn của thị trường việc làm ngày nay, phần lớn các trường của Mĩ đều khuyên sinh viên sắp vào của họ: “Nếu bạn muốn có việc làm được trả lương cao khi bạn tốt nghiệp, hãy học các khu vực công nghệ như kĩ sư phần mềm, khoa học máy tính hay quản lí hệ thông tin.”

Thần đồng 15 tuổi đỗ đại học, trở thành thiên tài thi ca nhưng cuộc đời khép lại ở tuổi 25

Phong cách sống - Thiên An - 15/08/2026 10:00
Cuộc đời của một trong những nhà thơ tài hoa nhưng đoản mệnh nhất Trung Quốc hiện đại vẫn còn để lại nhiều suy ngẫm cho đến tận ngày nay.

Chia sẻ từ trái tim - Mùa Vu Lan: Đứa con liệt sanh

Từ sách - Phim - FN - 15/08/2026 09:00
Bây giờ đến dạng con thứ ba. Nếu cha mẹ tu hành, làm thiện, làm lành mà đứa con lại không thiện, không lành thì đứa con đó, đức Phật gọi là liệt sanh.

Vấn đề với cách tiếp cận Agile

Blog GS John VU - GS John Vu - 14/08/2026 11:00
Một người phát triển phần mềm hỏi tôi: “Người quản lí của tôi nói rằng hoạt động chính của Agile chỉ là viết mã và kiểm thử. Bạn không cần tài liệu cho nên chúng tôi có thể hoàn thanh nhanh và đó là lí do tại sao cái tên “Agile – mau lẹ” tới. Điều đó có đúng không?”

Tâm lý học: Tài sản quý giá nhất của người phụ nữ

Suy ngẫm - Tr. Quang - 14/08/2026 10:00
Tài sản quý giá nhất của người phụ nữ không bao giờ là tuổi trẻ hay sắc đẹp, mà chính là hai khả năng tưởng chừng như trái ngược nhau này. 

Nhạc sĩ Nguyễn Văn Chung miễn tác quyền trong 7 trường hợp, người sử dụng không cần xin phép

Phong cách sống - Minh Ngọc - 14/08/2026 09:00
Nhạc sĩ cho biết sẵn sàng cho phép sử dụng và miễn tác quyền đối với nhiều hoạt động giáo dục, cộng đồng, tôn giáo hay mục đích cá nhân không tạo ra doanh thu. Thậm chí, với những trường hợp nằm trong danh sách này, mọi người không cần mất công nhắn tin xin phép anh trước khi sử dụng các ca khúc.

Chia sẻ từ trái tim - Mùa Vu Lan: Những đứa con tùy sanh

Từ sách - Phim - FN - 14/08/2026 08:00
Hồi nhỏ Pháp Hòa có một thú chơi mà nhiều người không thích: Pháp Hòa đi tìm con gián, con dế, con thằn lằn, v.v…, con nào chết, Pháp Hòa làm đám tang cho nó đàng hoàng.

Lời khuyên về giáo dục

Blog GS John VU - GS John Vu - 13/08/2026 11:00
Theo một nghiên cứu toàn cầu mới, năm nay các công ti sẽ thuê nhiều sinh viên tốt nghiệp đại học hơn năm ngoái nhưng chỉ với những bằng cấp nào đó. Khoa học máy tính, kĩ nghệ phần mềm, y học và chăm sóc sức khoẻ là NÓNG.

Tôi dùng ChatGPT thay cho 12 ứng dụng trên điện thoại và cái kết bất ngờ

Kỹ năng - Quốc Vinh - 13/08/2026 10:00
ChatGPT có thể thay thế được các ứng dụng trên điện thoại như báo thức, máy tính hay thời tiết hay không?

Nam sinh từng cõng mẹ tâm thần đi học ĐH, từ chối mức lương 2 tỷ để về núi dạy học

Truyền cảm hứng - Nhật Linh - 13/08/2026 09:00
Năm 2008, hình ảnh một tân sinh viên Trung Quốc tay xách hành lý, tay dắt theo người mẹ mắc bệnh tâm thần đến nhập học từng khiến hàng triệu người xúc động.

Chia sẻ từ trái tim - Mùa Vu Lan: Con cái là phước hay là nghiệp?

Từ sách - Phim - FN - 13/08/2026 08:00
Người ta thường nói: “Cha mẹ sinh con, trời sinh tánh”. Thật ra câu đó chỉ để an ủi thôi, chứ đúng ra cha mẹ sinh con là duyên của cha mẹ, còn con được như thế nào là giữa cái nghiệp của nó và phước của cha mẹ.
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