28 May, 2021
Cơ hội phát triển Web
Một sinh viên Khoa học máy tính năm thứ ba viết cho tôi: “Em thích làm việc như người phát triển Web, loại kĩ năng nào em cần để làm tốt trong nghề này?” Nếu em muốn làm việc trong công ti nước ngoài, em cần có kĩ năng nào? Xin thầy giúp.”
Đáp: Người phát triển Web chịu trách nhiệm thiết kế, viết mã, và duy trì websites (tức là, thêm chức năng mới, cập nhật thông tin v.v.) Tuy nhiên, các kĩ năng không chỉ là kĩ thuật mà còn là nghệ thuật để hấp dẫn trực quan như thiết kế bố cục, cải tiến đồ hoạ và hiển thị mầu sắc v.v… Về căn bản người phát triển web vừa là người phát triển phần mềm và nghệ sĩ đồ hoạ.
Vài năm trước, mọi người có thể học vài môn học trong trường hướng nghề hay công ti đào tạo để là người phát triển web có chứng nhận, Webmaster có chứng nhận v.v. nhưng thị trường việc làm đã thay đổi nhanh chóng vì công nghệ web tiến hoá. Mặc dầu không khó để tạo ra một website cá nhân nhưng website doanh nghiệp yêu cầu nhiều thứ hơn vì chúng đang ngày càng phức tạp hơn. Có ba khu vực mà người phát triển web phải biết: Thực hiện an ninh để ngăn ngừa hackers khỏi đánh cắp mật khẩu, cấy viruses, ngựa Trojan, phần mềm hại hay tấn công xi be; Thực hiện bố cục “mặt tiền” để đảm bảo tính dùng được, hiệu năng và dễ dẫn lái; (Lưu ý: Mặt tiền là phần của web mà người dùng thấy và tương tác với); và phải chắc rằng mặt hậu được thiết kế tốt cho các giao tác và giao diện với các ứng dụng khác và cơ sở dữ liệu (Mặt hậu là phần mà mọi xử lí xảy ra và nó đang ngày càng phức tạp hơn, cho nên người phát triển web cần có khả năng nhận diện vấn đề và sửa chúng ngay lập tức.)
Ngày nay nhiều công ti đang tiến hành kinh doanh trực tuyến và họ cần có “website được thiết kế hiệu quả và chuyên nghiệp” cho nên nhu cầu về người phát triển web có kĩ năng là cao. Bất kể tới vị trí hay ngành công nghiệp, website là mặt tiền của cửa hàng đại diện cho công ti cho nên nó phải được thiết kế cẩn thận với nhiều chi tiết được suy nghĩ kĩ càng. Đó là lí do tại sao với phát triển web doanh nghiệp, phần lớn các công ti ưa thích thuê ai đó có bằng cử nhân trong Khoa học máy tính, Kĩ nghệ phần mềm vì những người tốt nghiệp các chương trình này có nhiều kĩ năng chiều sâu trong các ngôn ngữ lập trình, hiểu tính tương tác và kiểm thử tính dùng được.
Để là người phát triển Web giỏi, bạn cần hiểu cách bố cục/thiết kế website; lập trình trong PHP, HTML5 và CSS; có khả năng thêm tính tương tác cho website bằng việc dùng JavaScript, hay jQuery; có trí thức về cú pháp XML cho đánh dấu và nội dung, cách dùng XML cho tương tác dữ liệu; có khả năng viết các ứng dụng trong ngôn ngữ hướng đối tượng như Java, Ruby, Python hay PHP; quản lí thiết đặt DNS của miền; triển khai một website lên máy chủ website. Bên cạnh những kĩ năng kĩ thuật này bạn cũng cần các kĩ năng mềm (như, trao đổi, trình bày, giải quyết vấn đề, làm việc tổ, viết, quản lí thời gian v.v.) và nếu bạn muốn làm việc ở nước ngoài, bạn cần có kĩ năng tốt trong đọc, viết và nói tiếng nước ngoài.
Theo Sở Thống kê lao động Mĩ, việc làm phát triển web được dự báo tăng trưởng quãng 18% mỗi năm trong mười năm tới. Trong thời kì đó, trên 300,000 việc làm mới sẽ được tạo ra và một nửa sẽ không được lấp đầy hay đại thể 141,400 vị trí không có người. Trên toàn cầu, sẽ có trên nửa triệu vị trí không có người làm ở các nước đang phát triển nữa. Điều này có nguyên nhân bởi tăng trưởng bản chất do sự bành trướng của e-commerce toàn cầu. Khi nhiều doanh nghiệp bành trướng kinh doanh trực tuyến, nhiều người phát triển web sẽ được cần. Có cơ hội tăng trưởng khác cho phát triển web đối với điện thoại di động vì nhiều người đang dùng điện thoại thông minh để tiến hành kinh doanh thay vì máy tính cá nhân của họ. Websites được thiết kế cho điện thoại di động sẽ phải thích ứng với màn hình nhỏ và thân thiện người dùng hơn. Đó là lí do khác cho việc tăng trưởng công việc bản chất trong công việc phát triển web.
—English version—
Web development opportunities
A third year Computer Science student wrote to me: “I like to work as Web Developer, what kind of skills I need to do well in this career?” If I want to work in a foreign country what skills should I need? Please help.”
Answer: Web developers are responsible for designing, coding, and maintaining websites (i.e., adding new functions, update information etc.) However, the skills are not just technical but also artistic for visually appealing such as design layout, improve graphic and color display etc… Basically a web developer is both a software developer and a graphic artist.
Few years ago, people can take a few courses in vocational schools or training companies to be Certified Web Developer, Certified Webmaster etc. but the job market has changed quickly as web technology evolves. Although it is not difficult to create a personal website but business websites require much more as they are getting more complex. There are three areas that web developers must know: Security implementation to prevent hackers from stealing passwords, implant viruses, Trojan horse, malicious software or cyber-attack; Implement “front-end” layout to ensure usability, performance, and easy to navigate; (Note: Frontend is the part of the web that users see and interact with); and make sure that the backend is well designed for transactions and interface with other applications and database (Backend is the part when all processing takes place and it is getting more complex, so web developers need to be able to identify issues and fix them right away.)
Today more companies are conducting business online and they need to have “effective and professional designed websites” so demand for skilled web developers is high. Regardless of location or industry, website is the store front that represents the company so it must be designed carefully with a lot of well thought details. That is why for business web development, most companies prefer to hire someone with a Bachelor’s degree in Computer Science, Software Engineering as graduates of these programs have more in depth skills in programming languages, understand interactivity and usability testing.
To be a good Web developer, you need to understand how to layout/design website; program in PHP, HTML5 and CSS; be able to add interactivity to a website using JavaScript, or jQuery; have Knowledge of XML syntax for markup and content, how to use XML for the interchange of data; be able write application in an object oriented language such as Java, Ruby, Python or PHP; manage a domain’s DNS settings; deploy a website to a website host. Beside these technical skills you also need soft-skills (I.e., communication, presentation, problem solving, teamwork, writing, time management etc.) and if you want to work in foreign countries, you need to have good skills in reading, writing and speaking a foreign language.
According to the U.S Bureau of Labor Statistics, web development jobs are predicted to grow about 18% per year in the next ten years. During that period, over 300,000 new jobs will be created and half will not be filled or roughly 141,400 unfilled positions. Globally, there will be over half million unfilled positions in developing countries as well. These are cause by substantial growth due to the expansion of e-commerce globally. As more businesses expand their online businesses, more web developers will be needed. There is another growing opportunity for web development for mobile phone as more people are using smartphone to conduct business instead of their personal computer. Websites designed for mobile phone will have to accommodate to small screen and more user friendly. That is another reason for the substantial employment growth in web development jobs.