Khi Internet trở nên phổ biến hơn, kết mạng và kết cấu nền cũng trở thành mấu chốt cho mọi công ti. Nhiều người làm phần mềm tin rằng chỉ nối máy tính với internet thì mọi sự sẽ làm việc nhưng vấn đề không đơn giản thế. Mọi công ti đều cần kiến trúc hệ thống để thiết kế, thực hiện và vận hành các mạng, hệ thống máy tính, lưu giữ để đảm bảo rằng chúng tuân thủ với chính sách an ninh, nếu không thì mọi hệ thống của họ sẽ mong manh trước các hacker, vi rút và thư rác.
Kĩ năng kĩ nghệ phần mềm ngày nay như kiến trúc hệ thống, an ninh mạng hiếm khi được dạy ở đại học và hầu hết người làm phần mềm không biết cách kiến trúc hệ thống mạng một cách hiệu quả và an ninh hơn để cho kết nối từ máy tính tới internet trở thành quá trình “làm bất kì công việc gì.” Với nhiều kết nối hơn được cần tới khi càng ngày càng nhiều người dùng máy tính, các công ti đang vật lộn để bao quát sự phát triển nhanh này khi các hệ thống được tăng thêm. Trong khi đó, công nghiệp điện tử và viễn thông liên tục đưa ra thị trường nhiều máy móc, thiết bị và những công nghệ mới tạo ra nhiều vấn đề lẫn lộn và hỗn độn hơn cho ngành công nghiệp thay đổi nhanh này.
Không có tri thức và kĩ năng đúng về mạng, ngày càng nhiều công ti phải khoán ngoài mạng, hệ thống, và lưu giữ của họ cho nhà cung cấp dịch vụ. Tuy nhiên, với ngoại lệ của nhà cung cấp chất lượng tốt với kĩ năng kiến trúc mạnh, nhiều công ti làm khoán ngoài thực tế đang làm “việc vá víu” mà không hiểu tính đổi qui mô, hiệu năng, tính dùng được vốn là thuộc tính then chốt của kiến trúc hệ thống làm phát sinh hệ thống không hiệu quả, kết nối chậm khi nhiều thiết bị được thêm vào và kém an ninh với các cuộc tấn công tính toán.
Ngày nay, gần như mọi công ti đều dựa vào Internet để làm kinh doanh, có nhu cầu lớn về những người làm mạng được đào tạo trong kĩ nghệ phần mềm, đặc biệt trong an ninh, kiến trúc và khi các công nghệ mới tới như tính toán đám mây, phần mềm như dịch vụ, có nhiều nhu cầu về kĩ nghệ mạng – và kiến trúc mạng, thiết kế và thực hiện. Bởi vì thay đổi trong công nghệ, tri thức và kĩ năng về mạng, an ninh thay đổi nhanh chóng cho nên người làm phần mềm cần liên tục nâng cấp kĩ năng của họ tương ứng. Chẳng hạn, trao đổi thống nhất -Unified Communication – UC (kể cả viễn hội thảo) là xu hướng mới về cách các tổ chức toàn cầu tương tác với nhau. UC tất cả đều về kết nối nhiều hệ thống tạp nham để làm cho nó làm việc hướng tới chuẩn chung.
Để công nghệ này làm việc không dừng, tổ kết mạng phải có kĩ năng cao về kiến trúc, chiến lược và thực hiện UC. Với nhiều thiết bị di động đang được dùng ngày nay, nhiều hãng viễn thông đang xem xét gói các thiết bị di động và các chức năng khác lại bởi vì điện thoại di động không phải là điện thoại mà còn là máy tính và nền trao đổi qua đó thế hệ tiếp của ứng dụng phần mềm sẽ được chuyển giao và họ cần kiến trúc xác định tốt. (Nghĩ về iPhone và hàng nghìn ứng dụng)
Tất cả các xu hướng này trỏ tới một điều then chốt: Giáo dục và đào tạo liên tục là bản chất cho mọi người làm phần mềm. Tôi mạnh mẽ khuyên những người làm phần mềm học các khoá đào tạo thêm để nâng cấp kĩ năng của mình khi công nghệ tiếp tục thay đổi.
Today Information Technology (IT) is undergoing significant transformations but many software people are not preparing to deal with what is happening.
As the Internet became more popular, networking and infrastructure also became critical to all companies. Many software people believe that just connect computer to the internet then everything will work but it is not that simple. Every company needs system architects to design, implement and operate networks, computing systems, storage to ensure that they are in compliance with security policies or else all of their systems will be vulnerable for hackers, viruses, and Spam.
Today software engineering skills such as system architecture, network security are rarely taught at university and most software people did not know how to architect network systems efficiently and more securely so the connection from computers to internet became a process of “doing whatever work”. With more connection needed as more and more people using computer, companies are struggling to cope with this fast growth as more systems are added. Meanwhile, the electronic and telecom industry continue to place in the market more machines, devices, and new technologies create more confusing and chaotic problems to the fast changing industry.
Without the proper knowledge and skills in networks, more and more companies are outsourced their networks, systems and storages to services providers. However, with the exception of a well qualified provider with strong architecture skills, many outsourced companies are actually still doing “patchworks” without understanding of scalability, performance, usability which are key attributes of system architecture resulting in inefficient systems, slow connections as more devices are added and less secure to computing attacks.
Today, almost all companies are relying on the Internet to do business, there are significant demand in network people trained in software engineering, especially in security, architect and as new technologies come on line such as cloud computing, software as services, there are more demand in network engineering-and architecting, design and implementation. Because the changing in technologies, the knowledge and skills in network, security also change rapidly so software people need to continue to upgrade their skills accordingly. For example, Unified communications (including teleconferencing) is a new trend on how global organizations interact with each others. UC is all about connecting many disparate systems to make it work toward a common standard. For this technology to work seamlessly, networking teams must be highly skilled in UC architecture, strategy and implementation. With many mobile devices are being used today many telecom firms are considering bundling mobile devices and other functions together because cell phone is not a phone but also a Computer and communications platforms across which next-generation of software applications will be delivered and they need a well defined architecture. (Think iPhone and thousands of applications)
All of these trends point to one key thing: Continue education and training are essential to all software people. I strongly advise software people to take additional trainings to upgrade their skills as technology continues to change.