2020 rồi, IoT có còn là “kịch bản của thế giới”?

IoT-la-gi-fi

“IoT sẽ phát triển thành một ngành công nghiệp trị giá hơn 3.000 tỉ USD trong năm 2026.” – Dự báo được đưa ra bởi tạp chí Business Insider, dựa trên khảo sát thường niên về Internet of Things, phỏng vấn với 35 công ty, tập đoàn lớn về công nghệ.

Không riêng gì các developer trẻ hứng thú học IoT để tìm một cơ hội nghề nghiệp tốt hơn mà các developer lão luyện cũng đã bắt đầu tham gia nghiên cứu IoT để không trở nên lạc hậu.

Đọc bài phỏng vấn của ITviec với anh Nguyễn Văn Long – Head of IoT tại VNG Corporation để biết:

  • IoT là gì? Ứng dụng của IoT trong đời sống?
  • Những tố chất cần thiết để trở thành IoT Developer?
  • IoT Developer có cần biết code không?
  • Những nguồn tham khảo IoT chất lượng

Xem thêm việc làm IoT trên ITviec

Anh có thể giới thiệu một chút về bản thân mình?

Sau khi tốt nghiệp ngành Toán – Khoa học máy tính tại ĐH Khoa học tự nhiên, anh đầu quân cho Global CyberSoft với vị trí Software Developer và được thăng tiến lên vị trí Team Leader không lâu sau đó.

Sau khoảng 4 năm gắn bó với công ty, anh tìm thấy niềm đam mê với ERP (hệ thống quản trị doanh nghiệp) nên đã chuyển qua làm SAP ERP Consultant. Tuy nhiên, gần 3 năm sau, thị trường ERP rơi vào tình thế khá khó khăn. Đó là lúc anh tìm hướng đi mới cho mình.

Lúc đó, anh có một người bạn đang làm cho VNG Corporation. Bạn anh rủ rê qua làm game cho vui nhưng khi anh được nhận vào công ty thì công việc anh phụ trách lại liên quan đến phát triển dịch vụ về hạ tầng CDN – Content Delivery Network.

Ban đầu anh chỉ nghĩ là mình muốn tìm hiểu thêm về môi trường làm việc của VNG, xem như thế nào thôi và mức lương ở đây cũng ổn nên anh mới đồng ý làm nhưng không ngờ lại gắn bó lâu đến vậy.

Trong suốt hơn 7 năm, anh đã trải qua một số vị trí như Senior Developer, Team Leader, Software Manager…. Đến khi công ty phát triển thêm nhánh mới, đầu tư xây dựng hệ thống Cloud Service (bên cạnh 3 mảng chính là: Game, Zalo, Zalo Pay) thì anh được phân bổ làm Head of IoT.

Là Head of IoT, anh định nghĩa IoT là gì?

IoT là từ viết tắt của Internet of Things – Mạng lưới vạn vật kết nối. IoT định hướng kết nối những thiết bị, công cụ, đồ vật trong đời sống hàng ngày với internet để con người có thể giao tiếp, truy cập, điều khiển, thu thập được thông tin và quản trị các thiết bị đó nhằm làm tăng hiệu suất, hiệu quả sử dụng.

Anh nói đơn giản là ngày xưa máy lạnh chỉ là máy lạnh, gắn điện vào là sử dụng được thôi. Không có khái niệm mạng hay xử lý gì cả. Nhưng sau này, người ta gắn máy lạnh vào internet, trên mỗi máy lạnh có một bộ vi xử lý. Em có thể kiểm soát để nó bật/tắt mà không nhất thiết phải có mặt ở đó.

Một số ứng dụng của IoT mà anh biết?

Có thể kể đến như:

  • Nông nghiệp thông minh
  • Đô thị thông minh
  • Nhà máy thông minh
  • Văn phòng thông minh
  • Nhà thông minh
  • ….

Anh thấy nhiều khu nhà cao cấp (Smarthome) đã ứng dụng IoT rồi.

Ví dụ: Khi em là người cuối cùng ra ngoài, em chỉ cần bật tính năng “Tôi đi ra khỏi nhà” trên ứng dụng. Tự động, hệ thống đèn sẽ tắt, máy lạnh sẽ tắt, rèm kéo lại, cửa sổ đóng.
Khi em quay về nhà, chỉ cần ở hầm gửi xe thôi, em bật tính năng “Tôi đã về nhà” thì hệ thống sẽ biết ngay và bắt đầu khởi động lại hệ thống đèn, máy lạnh mở, rèm kéo ra, cửa sổ mở…

Để dễ hình dung hơn về một sản phẩm liên quan đến IoT, anh có thể lấy ví dụ từ chính công việc của mình?

Trước đây team anh có phát triển sản phẩm Cloud camera.

Thường thì một chiếc camera khi mua về, người ta sẽ gắn thẻ nhớ SD vào, mọi dữ liệu sẽ được lưu trên thẻ nhớ này. Khi có việc cần dùng đến dữ liệu được ghi trong camera, người ta phải tải về rồi copy sang USB hoặc máy tính. Dung lượng lưu trữ của camera truyền thống cũng bị giới hạn.

Giải pháp của bọn anh là đưa tất cả các lưu trữ này lên Cloud để tiện cho việc xử lý, quản lý tập trung, backup và dễ dàng nâng cấp dung lượng theo yêu cầu.

Khi camera kết nối với internet thì nó sẽ chuyển hết dữ liệu lên Cloud, chỉ cần đăng nhập vào tài khoản người dùng là có thể xem được. Khi muốn sử dụng dữ liệu, chỉ cần bấm nút “tải về” là xong, không phải mất nhiều bước rườm rà như tháo lắp thẻ nhớ rồi cắm vào máy tính…

Code có bắt buộc với những người làm IoT không anh?

Có chứ em. Một người làm về IoT thì vẫn cần biết code (lập trình), chỉ khác là họ lập trình ở layer nào thôi. Chẳng hạn: lập trình ở mã máy, hệ điều hành, firmware hay lập trình trên ứng dụng.

Có một số người cho rằng Firmware Developer là cách gọi khác của IoT Developer. 2 vị trí này là một hả anh?

Không, 2 vị trí này hoàn toàn khác nhau.

Lập trình firmware là lập trình cấp thấp, chủ yếu giao tiếp với phần cứng, có khả năng gọi trực tiếp xuống phần cứng và điều khiển phần cứng.

Một bạn làm IoT Developer sẽ lập trình ở nhiều layer hơn so với một bạn làm Firmware Developer – chỉ tập trung ở layer firmware.

IoT-la-gi-01
Anh Long (đầu tiên, bên trái) cùng các đồng nghiệp

Là người trực tiếp phỏng vấn IoT Developer. Đâu là tố chất mà anh tìm kiếm ở một ứng viên phù hợp?

Cái này thì tùy thôi. Những vị trí về IoT nhưng chỉ đơn giản là ứng dụng thôi thì vẫn tuyển bình thường, không cần tố chất hay kỹ năng IoT gì đặc biệt.

Ví dụ như cần một bạn viết Angular cho Front-end thì anh chỉ tập trung vào các kỹ năng liên quan đến Front-end thôi. Sau đó, anh sẽ nói thêm về lĩnh vực công ty đang làm, nếu bạn đó thấy hứng thú và có kỹ năng phù hợp thì làm.

Đọc thêm: Angular là gì? Giúp ích gì cho Front-end Developer?

Còn những vị trí chuyên sâu về IoT thì anh sẽ tìm kiếm các yếu tố khác.

Chẳng hạn, tuyển bạn lập trình firmware hoặc thiết kế phần cứng bên dưới thì anh yêu cầu bạn phải tốt nghiệp những ngành chuyên môn (liên quan đến kỹ thuật điện, kỹ thuật điều khiển và tự động hóa…) từ trường Bách Khoa. Hoặc những bạn đã có kinh nghiệm làm việc tương tự ở những công ty khác.

Thường thì bên anh sẽ có 3 kiểu tuyển dụng chính:

  • Khi team không có kỹ năng hoặc có nhưng rất yếu, không đáp ứng được yêu cầu phát triển của sản phẩm : anh sẽ chọn những bạn có kỹ năng mà team còn thiếu để bù trừ hoặc những bạn đã từng làm sản phẩm mà anh định làm. Và ưu tiên các bạn có chuyên môn cao. Ví dụ: AI, Machine Learning, sản xuất phần cứng, xử lý lập trình trên camera…
  • Team có năng lực nhưng số lượng nhân lực hiện tại không đủ: anh sẽ ưu tiên chọn những bạn senior, có khả năng deliver tốt để kịp tiến độ dự án.
  • Khi không có áp lực về yêu cầu sản phẩm hay nguồn lực thì anh sẽ đề xuất tuyển các bạn fresher để đào tạo vì anh thấy các bạn học hỏi khá nhanh.

Ngoài ra, như anh chia sẻ thì khả năng code là bắt buộc với các bạn muốn làm IoT. Chỉ riêng vị trí hardware design (thiết kế phần cứng) là trọng số code khá ít, có thể code hoặc không. Nhưng anh vẫn sẽ ưu tiên cho những bạn có kỹ năng lập trình cơ bản.

Anh cũng dành điểm cộng cho những bạn có khả năng giao tiếp, trình bày tốt vì điều này rất có lợi cho việc phát triển team về lâu dài.

Sai lầm đáng nhớ nhất mà anh từng mắc phải và bài học rút ra được?

Có lẽ là khi anh còn làm quản lý team vận hành hệ thống CDN tại VNG.

Lúc đó, team anh được yêu cầu thực hiện một thay đổi gấp trên hệ thống. Cụ thể là update version của một service trong mô hình Microservices để đáp ứng cho tính năng mới.

Theo nguyên tắc thì mỗi khi muốn thực hiện thay đổi, em phải tuân thủ các bước như: code xong thì chuyển qua test trên môi trường staging, OK thì push lên môi trường production để test lại lần cuối. Thường thì thời gian push lên production được quy định là nửa đêm (thời gian thấp điểm) để trong trường hợp có lỗi gì, team còn kịp thời fix hoặc rollback (trả lại tình trạng ban đầu).

Đáng lẽ anh phải trao đổi với team đưa ra yêu cầu, nói cho họ hiểu là thay đổi đó phải trải qua quy trình chuẩn như phía trên nhưng vì họ hối thúc anh và một phần do chủ quan, nghĩ rằng thay đổi này không quan trọng nên anh đã không làm như vậy.

Khi developer code xong thì anh vội vàng duyệt cho qua hết, xong rồi đưa lên test sơ sơ, sau đó đưa lên production chạy. Việc thay đổi cũng không được thực hiện vào ban đêm đúng như nguyên tắc.

Khoảng 4-5 tiếng sau thì có một bên thứ 3 phát hiện lỗi. Khi họ thông báo thì anh cũng đoán là lỗi này đã phát sinh ngay khi thực hiện thay đổi rồi, chứ không thể nào mấy tiếng sau mới bị. Chỉ là do anh và team ẩu nên mới không phát hiện ra.

Bọn anh loay hoay tìm root cause, mãi đến 7,8 tiếng sau mới giải quyết được lỗi này. Trong thời gian xảy ra lỗi và team tìm cách khắc phục, có khoảng 60-70% user bị ảnh hưởng, không thể sử dụng được dịch vụ.

Hậu quả cũng tương đối nghiêm trọng nên sếp đã gọi anh vào để làm rõ vấn đề và ghi nhận lại lỗi lầm theo quy chế của công ty.

Anh rút ra bài học là những gì liên quan đến môi trường vận hành, môi trường production đều phải tuân thủ quy trình chặt chẽ. Đôi khi, mình hời hợt hoặc không có đủ thời gian để đánh giá thì rất dễ dẫn đến sai sót.

Khi thực hiện thay đổi A, anh sẽ định nghĩa xem thay đổi đó là gì, có “đẻ” ra thêm thay đổi B phía sau hay không, khả năng phát sinh cao hay thấp. Để thực hiện thay đổi A này cần có các điều kiện gì, các bước review, test ra sao… Sau khi thực hiện thay đổi mà nó thất bại thì mức độ nghiêm trọng như thế nào (có thể xếp hạng theo level từ 1-5)…

Nếu quay lại quá khứ thì anh có chọn theo con đường hiện tại?

Thật ra anh chưa từng suy nghĩ về vấn đề này. Anh cũng tương đối hài lòng với công việc hiện tại.

Với anh, ngành nghề là một vấn đề, còn nơi làm việc cụ thể lại là một vấn đề khác. Tuy nhiên, nếu có cơ hội làm về IoT thì anh thấy vẫn OK, không có vấn đề gì cả.

Anh suy nghĩ thế nào về mức lương của IoT Developer?

Một kỹ sư bình thường thì khoảng 20-30 triệu/tháng. Còn senior thì vô chừng lắm, tùy theo kỹ năng đặc thù của từng bạn, cũng khoảng 30-60 triệu/tháng.

Theo anh, IoT có đang là xu hướng?

Giờ anh thấy ngành nào ứng dụng công nghệ cũng là xu hướng hết (cười). IoT cũng là xu hướng đó. Quan trọng là bạn có đam mê hay không thôi. Khi tham gia bất kỳ lĩnh vực nào, các bạn phải làm việc tập trung, làm đến nơi đến chốn thì sẽ có nhiều cơ hội phát triển.

IoT-la-gi-02

Lời khuyên anh dành cho các bạn muốn theo đuổi nghề IoT Developer?

Anh thấy ngành IoT này sẽ phù hợp với những bạn có đam mê: tìm tòi, khám phá, thử nghiệm các thiết bị mới. Bạn sẽ cảm thấy rất hứng thú vì có nhiều thứ để học, rất nhiều ứng dụng cụ thể vào đời sống hằng ngày, có thể nhìn thấy được.

Còn nếu bạn đang làm software mà muốn chuyển qua làm IoT thì cần tìm hiểu thêm về:

  • Các thiết bị IoT, các ứng dụng IoT
  • Lập trình nhúng & tìm hiểu về các loại máy tính nhúng
  • Các chuẩn và giao thức truyền dữ liệu trong IoT: MQTT, M2M, LoRa…

Và một số kiến thức khác.

Những tài liệu anh đã từng tham khảo trong suốt sự nghiệp?

Và tất nhiên là cả Goolge.com

Robby2

Bạn thấy bài viết hay và cần thiết với nhiều người? Đừng ngại nhấn nút Share bên dưới nhé.

Và đừng quên tham khảo việc làm IoT trên ITviec.

14 Shares

About the Author:

Social Content Lead
Avatar

Read more...

error: