messenger

Chat Mess

zalo

Chat Zalo

phone

Phone

Gọi ngay: 097.6666.799
messenger

Facebook

messenger

TikTok

Hỗ trợ tư vấn: 097.6666.799
Techcombank

Senior Officer, Software Engineering (40001157)

TP. Ha Noi Technology Division
Experienced (Non-Manager)

Mô tả công việc

Job Purpose

The job holder successfully deploying technology solutions for projects of the whole line.

Key Accountabilities (1)

Software Development

  • Drive and deliver top quality HTML, CSS, JQuery and JavaScript user interface code on a wide range of interactive web projects.
  • Own the UI code of the digital platform and the architecture of the user experience, leading designers to take the wireframe from development to delivery.
  • Collaborate with back-end developers to troubleshoot and resolve coding issues, improving usability.
  • Ensure that all materials produced are of high quality, accuracy, timeliness and compliance with accessibility standards.
  • Maintain graphic and branding standards throughout the product's look and feel.
  • Actively test and debug the program to ensure stability and accuracy.
  • Develop and maintain user interface code to improve forecasting methods and statistical and analytical models to assist business tribes in their decision making.
  • Build interfaces and user interfaces for the bank's digital platforms, ensuring a seamless digital interface from the customer's point of view.
  • Responsible for the user-facing code of the digital platform and the architecture of the user experience, working closely with the designers to take the wireframe from development to delivery
  • Collaborate with back end developers and UI/UX designers to improve usability.
  • Proactively give suggestions and systematized solutions to influence the design of the platform.
  • Responsible for defining the structure and design of web pages, striking a balance between functional and aesthetic design, and ensuring the web design is optimized for mobile pages.
  • Maintain and constantly improve the developed website and optimize the application for smooth use of the application.

Key Accountabilities (2)

Software Documentation

  • Instruct tribe and team members to translate business requirements into technical design documents.
  • Actively review and foster discussions with team members on functional requirements documents to build and improve TCB's digital products"
  • Work closely with tribe and squad members to translate business requirements into technical design documents.
  • Review and execute requirements documents by coding flowcharts, layouts, diagrams, charts, code annotations, and instructions for the program."

Key Accountabilities (3)

Key Relationships - Direct Manager

Manager, Software Engineenring/ Team Lead, Software Engineenring

Key Relationships - Direct Reports

Key Relationships - Internal Stakeholders

Division, units, branches/subsidiaries of TCB

Key Relationships - External Stakeholders

Application/solution provider partners, IT departments of key customer businesses

Success Profile - Qualification and Experiences

Qualifications

  • Bachelor's Degree in Computer Science, Software Engineering or Information Technology

Work Experience

  • At least 5 years of front-end experience developing in at least 2 languages (HTML, CSS, JavaScript, React)
  • Experience working with popular JavaScript frameworks and libraries (AngularJS, Vue, jQuery)
  • Experience with tools that leverage UI/UX design and implementation such as Bootstrap or ZURB Foundation
  • Experience working in a source control environment such as GIT or TFVC
  • Experience in the full development lifecycle from requirements analysis through coding and release
  • Deep experience in developing, testing, documenting, and releasing critical software
  • Solid understanding of API design and implementation"

Foreign language

  • English/ according to TCB's regulations in each period

Phân tích kỹ năng cần có

1. Kết luận quan trọng

Đây là vị trí kỹ sư phát triển giao diện cấp cao trong lĩnh vực ngân hàng, tập trung vào nền tảng số dành cho khách hàng và các giao diện hỗ trợ phân tích dữ liệu. Mức độ trách nhiệm thực tế cao hơn chức danh hành chính: ứng viên không chỉ viết mã mà còn phải thiết kế cấu trúc giao diện, phối hợp với nhóm thiết kế và phát triển phía máy chủ, kiểm thử, tối ưu trải nghiệm, bảo mật, hiệu năng và tài liệu kỹ thuật.

Tin tuyển dụng yêu cầu ít nhất 5 năm kinh nghiệm phát triển giao diện. Cụm mô tả kinh nghiệm bị cắt ở phần “developing in at”, vì vậy không nên khẳng định rằng công ty bắt buộc dùng một khung giao diện cụ thể. Các công nghệ được nêu rõ gồm HTML, CSS, jQuery và JavaScript; còn TypeScript, React, Angular hoặc Vue chỉ nên được xem là lợi thế nếu ứng viên thực sự có kinh nghiệm.

Vị trí có phần quản lý kỹ thuật nhưng khả năng cao vẫn là vị trí chuyên gia cá nhân cấp cao, không phải vị trí quản lý con người, vì mô tả không nêu cấp dưới trực tiếp và trọng tâm là sở hữu mã nguồn, kiến trúc giao diện cùng chất lượng sản phẩm.

2. Ma trận kỹ năng nền tảng

Nhóm kỹ năng Mức độ Bằng chứng ứng viên nên có
Kinh nghiệm sản phẩm thực tế Rất cao Ít nhất 5 năm phát triển, vận hành giao diện được đưa vào môi trường thật
HTML, CSS và JavaScript Rất cao Xây dựng giao diện responsive, xử lý trạng thái, sự kiện và luồng người dùng
jQuery và hệ thống cũ Cao Đọc, sửa và chuyển đổi mã jQuery hoặc làm việc trên nền tảng đang dùng jQuery
Kiến trúc giao diện Rất cao Thiết kế cấu trúc trang, thành phần dùng chung, quản lý trạng thái và luồng dữ liệu
Phối hợp liên phòng ban Cao Làm việc với nhóm thiết kế, phát triển phía máy chủ, nghiệp vụ và kiểm thử
Kiểm thử và gỡ lỗi Cao Kiểm thử thành phần, tích hợp, đầu-cuối; đọc log và truy vết lỗi giao diện
Hiệu năng và khả năng tiếp cận Cao Tối ưu tốc độ tải, thao tác mượt, tương thích trình duyệt và hỗ trợ người khuyết tật
Tài liệu kỹ thuật Cao Biến yêu cầu nghiệp vụ thành tài liệu thiết kế, lưu đồ, sơ đồ và hướng dẫn triển khai
Kiến thức ngân hàng Có lợi thế Hiểu các luồng đăng ký, định danh, sản phẩm, giao dịch, thông báo và bảo mật khách hàng

3. Kỹ năng chuyên môn cần chuẩn bị

A. Nền tảng phát triển giao diện

  • HTML có ngữ nghĩa, biểu mẫu, bảng dữ liệu và cấu trúc trang thân thiện với trình đọc màn hình.
  • CSS hiện đại: hệ thống lưới, bố cục linh hoạt, định vị, biến đổi, truy vấn theo phương tiện, biến thiết kế và các trạng thái tương tác.
  • Thiết kế responsive cho điện thoại, máy tính bảng và màn hình lớn; xử lý mật độ thông tin, vùng chạm và thang phóng trong ứng dụng ngân hàng.
  • JavaScript: phạm vi biến, hàm, đối tượng và lớp, đóng gói, lời gọi lại, ngữ cảnh `this`, nguyên mô hình, vòng lặp sự kiện, mô hình đối tượng tài liệu, lời hứa, `async` và `await`, mô-đun, quản lý lỗi và rò rỉ bộ nhớ.
  • Hiểu vòng đời ứng dụng web: tải tài liệu, phân tích, dựng cây, định kiểu, bố cục, vẽ, tương tác và tác vụ dài ảnh hưởng tốc độ giao diện.

B. jQuery và khả năng làm việc với hệ thống kế thừa

Sự xuất hiện rõ của jQuery cho thấy ứng viên phải sẵn sàng đọc hoặc duy trì mã cũ. Cần nắm:

  • Bộ chọn, sự kiện, phép duyệt và thao tác tập thể.
  • Lời gọi bất đồng bộ và đối tượng trì hoãn của jQuery.
  • Quản lý sự kiện và namespace để tránh xung đột.
  • Hiệu năng của các phép chọn lặp lại.
  • Chiến lược chuyển jQuery sang JavaScript hiện đại hoặc khung giao diện mới mà không làm gián đoạn nghiệp vụ.

Không nên khẳng định jQuery là công nghệ lạc hậu cần loại bỏ ngay. Trong ngân hàng, nhiều hệ thống có vòng đời dài và yêu cầu thay đổi tối thiểu. Hãy thể hiện khả năng hiểu, cải tiến có kiểm soát và chuyển đổi có kế hoạch.

C. Kiến trúc và thiết kế giao diện

Ứng viên cần chứng minh khả năng đưa bản dạng thang trên giấy hoặc bản thiết kế từ nhóm thiết kế đến sản phẩm thật:

  • Phân tích yêu cầu nghiệp vụ và xác định trang, luồng, trạng thái.
  • Phân rã giao diện thành thành phần có trách nhiệm rõ ràng.
  • Thiết kế hệ thống thiết kế dùng chung: màu sắc, kiểu chữ, khoảng cách, biểu mẫu, nút, thông báo và bảng.
  • Quản lý trạng thái cục bộ, trạng thái từ xa, lỗi, tải trang, dữ liệu rỗng và mất kết nối.
  • Thiết kế lớp trình bày, lớp nghiệp vụ và lớp tích hợp dữ liệu để mã dễ kiểm thử.
  • Cân bằng giữa chức năng, thẩm mỹ, tốc độ, khả năng bảo trì và khả năng mở rộng.
  • Biết khi nào nên tái sử dụng thành phần và khi nào phải giữ giải pháp đơn giản.

D. Khả năng tiếp cận và trải nghiệm người dùng

Cần hiểu Hướng dẫn Khả năng Tiếp cận Nội dung số của Tổ chức Chuẩn Web Quốc tế, đặc biệt mức 2.2 mức A A, bao gồm:

  • Điều hướng bằng bàn phím và thứ tự tiêu điểm hợp lý.
  • Nhãn, thông báo lỗi và hướng dẫn bằng văn bản rõ ràng.
  • Tương phản màu, kích thước vùng chạm và khả năng phóng to.
  • Ngữ nghĩa biểu mẫu, trạng thái bắt buộc và thông báo cho trình đọc màn hình.
  • Không chỉ dựa vào màu sắc để truyền đạt ý nghĩa.

E. Hiệu năng và chất lượng sản phẩm

  • Tối ưu tài nguyên hình ảnh, phông chữ, mã nguồn và số lượng yêu cầu mạng.
  • Tách mã theo tuyến, tải chậm phần không cần thiết và tránh dựng lại không kiểm soát.
  • Sử dụng bộ nhớ đệm phù hợp nhưng tuyệt đối không lưu dữ liệu nhạy cảm không cần thiết.
  • Đo tốc độ tải, độ trễ tương tác, tổng thời gian chặn nội dung và mức ổn định khi tải trang.
  • Kiểm soát rò rỉ bộ nhớ, yêu cầu mạng lặp lại và xử lý thất bại.
  • Kiểm thử trên nhiều kích thước màn hình và nhiều trình duyệt.

F. Kiểm thử và gỡ lỗi

  • Kiểm thử thành phần, tích hợp và theo luồng từ đầu đến cuối.
  • Biết khi nào chọn mô phỏng dữ liệu, khi nào dùng dữ liệu thật trong môi trường kiểm thử.
  • Viết tình huống kiểm thử tốt cho biểu mẫu, xác thực, tải trang, lỗi mạng và trạng thái không có dữ liệu.
  • Đọc dấu vết lỗi trong trình duyệt, hiểu vòng đời sự kiện và xác định lỗi nằm ở giao diện hay tích hợp phía máy chủ.

G. Bảo mật và nghiệp vụ ngân hàng

Đây không được xem là kiến thức phụ. Giao diện ngân hàng thường hiển thị dữ liệu tài chính và thông tin định danh, vì vậy cần hiểu:

  • Nguy cơ chèn mã từ xác thực và cách thoát nội dung.
  • Nguy cơ giả mạo yêu cầu giữa trang và cấu hình chính sách bảo vệ trình duyệt.
  • Nguyên tắc không lưu mật khẩu, mã xác thực hoặc dữ liệu nhạy cảm trong bộ nhớ cục bộ.
  • Che giấu dữ liệu trong giao diện, không ghi nhạn cảm và bảo đảm dữ liệu thật chỉ dùng trong môi trường được cấp quyền.
  • Xác thực phía máy chủ vẫn là bắt buộc, không thể chỉ kiểm tra biểu mẫu ở trình duyệt.
  • Nguyên tắc thu thập tối thiểu, thông báo rõ mục đích và bảo vệ dữ liệu cá nhân.

4. Kỹ năng mềm cần thể hiện

  • Phối hợp hiệu quả với nhóm thiết kế, nhóm phát triển phía máy chủ, kiểm thử và đại diện nghiệp vụ.
  • Chuyển yêu cầu nghiệp vụ thành giải pháp kỹ thuật rõ ràng, không chỉ nhận nhiệm vụ và chờ thiết kế hoàn tất.
  • Chủ động đề xuất cải tiến nhưng trình bày bằng dữ liệu, rủi ro và phương án triển khai cụ thể.
  • Tôn trọng tiêu chuẩn thương hiệu ngân hàng và yêu cầu tuân thủ.
  • Giao tiếp rõ về giới hạn kỹ thuật, thời gian và rủi ro; không che giấu lỗi.
  • Tư duy định hướng khách hàng nhưng vẫn bảo vệ tính chính xác, an toàn và quyền riêng tư.
  • Khả năng tự học, đọc tài liệu tiếng Anh và cập nhật tiêu chuẩn bảo mật.

5. Chứng chỉ và bằng chứng nên ưu tiên

Tin tuyển dụng không yêu cầu chứng chỉ cụ thể. Do đó, không nên mua chứng chỉ chung chung thay vì xây dựng năng lực thực tế. Thứ tự bằng chứng nên là:

1. Danh mục dự án có mã nguồn hoặc bản trình bày hình ảnh được phép chia sẻ.
2. Kinh nghiệm vận hành sản phẩm thực tế và số liệu cải thiện.
3. Bài kiểm thử, bản thiết kế và tài liệu kỹ thuật trong hồ sơ.
4. Chứng chỉ tiếng Anh nếu trình độ là điểm yếu.
5. Chứng chỉ chuyên sâu về khả năng tiếp cận, bảo mật hoặc nền tảng đám mây chỉ khi nó liên quan trực tiếp và có thời gian thực hành.

6. Cách chứng minh năng lực trong hồ sơ

Hãy trình bày tối đa ba dự án nổi bật theo cấu trúc:

  • Bối cảnh và vấn đề người dùng.
  • Trách nhiệm cá nhân và quy mô nhóm.
  • Kiến trúc giao diện, thư viện và các quyết định kỹ thuật.
  • Cách xử lý trạng thái tải, lỗi, truy cập bằng bàn phím và hiệu năng.
  • Kết quả đo được như thời gian tải giảm, tỷ lệ lỗi giảm, số người dùng hoặc tốc độ hoàn thành tác vụ.
  • Cách kiểm thử, triển khai và ghi tài liệu.

Có thể dùng mẫu mô tả: “Đã thiết kế và vận hành giao diện cho hệ thống phục vụ…; giảm thời gian tải…%; tách… thành phần dùng chung; xử lý… lỗi hiệu năng và hoàn thiện kiểm thử…” Chỉ điền số liệu thật, có thể kiểm chứng.

Chuẩn bị phỏng vấn

1. Quy trình phỏng vấn có thể xuất hiện

Đây là kịch bản tham khảo vì Techcombank chưa công bố quy trình chính thức trong dữ liệu. Với vị trí cấp cao, thường có các bước sau:

Vòng 1: Sàng lọc với nhân sự tuyển dụng

Thời lượng có thể khoảng 15–30 phút.

Câu hỏi thường gặp:

  • Vì sao chọn vị trí và Techcombank?
  • Bạn có đúng ít nhất 5 năm kinh nghiệm phát triển giao diện không?
  • Từng chịu trách nhiệm với sản phẩm nào và quy mô bao nhiêu?
  • Kinh nghiệm với HTML, CSS, JavaScript, jQuery và khung giao diện của bạn ra sao?
  • Kỹ năng chuyên môn và kỹ năng con người điểm mạnh nhất là gì?
  • Mức lương mong đợi, thời gian có thể nhận việc và nhu cầu phụ thuộc ra sao?
  • Bạn có đang ứng tuyển nhiều nơi cùng lúc không?

Cách chuẩn bị: trả lời trong 60–90 giây, nêu con số và kết quả thay vì liệt kê trách nhiệm chung chung.

Vòng 2: Kiểm tra chuyên môn sơ bộ

Các nội dung có thể gồm:

  • Phân biệt lập trình trình duyệt, phía máy chủ và kiểm thử giao diện.
  • Vòng đời một yêu cầu từ phân tích nghiệp vụ đến triển khai.
  • Cấu trúc một trang ngân hàng: danh bảng, trạng thái tải, trạng thái rỗng, thông báo lỗi và bộ lọc.
  • Cách làm việc với khung giao diện khác nhau.
  • Cách phân biệt lỗi giao diện, lỗi tích hợp và lỗi máy chủ.
  • Ví dụ về dự án bạn tự thiết kế kiến trúc hoặc cải tiến hiệu năng.

Vòng 3: Phỏng vấn chuyên sâu và thiết kế hệ thống

Thước nghiệm có thể bao gồm:

  • Thiết kế giao diện bảng điều khiển giao dịch cho nhiều loại tài khoản.
  • Chọn cấu trúc thành phần, quản lý trạng thái và lớp dữ liệu.
  • Xử lý tệp lớn, tìm kiếm, lọc, sắp xếp và phân trang.
  • Làm thế nào để tích hợp dữ liệu từ nhiều nguồn mà không khó bảo trì.
  • Thiết kế trạng thái tải, lỗi, mất mạng, hết phiên đăng nhập và xác thực lại.
  • Duy trì nhất quán giao diện giữa nhiều sản phẩm.
  • Đánh đổi giữa tốc độ phát triển, độ bao phủ tính năng, hiệu năng và khả năng bảo trì.
  • Cách di chuyển dần từ jQuery sang công nghệ mới mà không ngắt quãng sản phẩm.

Cứ nêu yêu cầu, giới hạn, phương án đánh đổi và lý do. Không nên nhảy ngay vào tên thư viện.

Vòng 4: Lập trình thực hành hoặc làm cùng người phỏng vấn

Có thể yêu cầu xây dựng một màn hình đơn giản nhưng hoàn chỉnh. Kịch bản ôn tập phù hợp:

  • Danh sách giao dịch có tìm kiếm, lọc và phân trang.
  • Mô phỏng dữ liệu tải, không có dữ liệu và lỗi mạng.
  • Biểu mẫu có kiểm tra dữ liệu.
  • Giao diện dùng được trên điện thoại.
  • Điều hướng bằng bàn phím, nhãn lỗi rõ ràng và tương phản tốt.
  • Cấu trúc mã nguồn có tổ chức, có kiểm thử.
  • Tài liệu ngắn mô tả cách chạy, quyết định thiết kế và hạn chế đã biết.

Không sử dụng dữ liệu khách hàng thật, không đưa bí mật nội bộ lên kho mã hoặc dịch vụ công cộng. Nếu nhận bài ở nhà, cần hỏi rõ thời hạn, phạm vi, thư viện được phép và cách nhận phản hồi.

Vòng 5: Vòng phỏng vấn về ảnh hưởng và phong cách làm việc

Chuẩn bị sáu câu chuyện theo cấu trúc tình huống – nhiệm vụ – hành động – kết quả, gồm:

1. Giao diện bạn thiết kế lại như thế nào và kết quả ra sao?
2. Bạn đã phát hiện lỗi nghiêm trọng trước khi lên môi trường thật bằng cách nào?
3. Khi nhóm thiết kế và nghiệp vụ có ý kiến khác nhau, bạn xử lý ra sao?
4. Bạn đã ảnh hưởng đến quyết định kỹ thuật như thế nào khi không phải người quản lý?
5. Bạn đã đồng ý với thời hạn không khả thi ra sao?
6. Bạn đã truyền đạt tài liệu hoặc kiến thức cho người khác thế nào?

Mỗi câu chuyện nên có một con số hoặc bằng chứng: số người dùng, tỷ lệ lỗi, thời gian tiết kiệm, số nhóm sử dụng lại, số lỗi tái phát.

Vòng 6: Trao đổi với quản lý hoặc bộ phận tuyển dụng cuối cùng

Trọng tâm có thể là:

  • Bạn hiểu vai trò cấp cao trong tổ chức như thế nào?
  • Bạn sẽ thành công trong 90 ngày đầu ra sao?
  • Bạn đồng ý với chính sách, tiêu chuẩn bảo mật và yêu cầu tuân thủ thế nào?
  • Bạn muốn phát triển theo hướng chuyên sâu, dẫn dắt kỹ thuật hay quản lý con người?
  • Điều gì khiến bạn cân nhắc rời khỏi nơi làm việc hiện tại?

2. Câu hỏi ứng viên nên hỏi

  • Ngăn hạt đang dùng khung giao diện nào và phần mã jQuery chiếm bao nhiêu?
  • Công việc gồm bao nhiêu phần phát triển, thiết kế, tài liệu, kiểm thử và hỗ trợ sự cố?
  • Có bao nhiêu người trong nhóm và các nhóm liên quan làm việc với sản phẩm?
  • Ba kết quả quan trọng nhất sau 6–12 tháng là gì?
  • Quy trình phát hành gồm kiểm thử thủ công, tự động, đánh giá bảo mật và phê duyệt nào?
  • Đội ngũ có phải trực ngoài giờ để xử lý sự cố sản phẩm không?
  • Tiêu chuẩn về khả năng tiếp cận và hiệu năng được đo bằng công cụ nào?
  • Cơ chế thưởng, phúc lợi, bảo hiểm, ngày phép, thử việc và chính sách làm việc ra sao?
  • Lương được xác định theo cấp bậc, năng lực và kết quả như thế nào?

3. Trang phục và điểm nhỏ trước phỏng vấn

Nên chọn trang phục công sở hài hòa, gọn gàng và phù hợp môi trường ngân hàng: áo sơ mi hoặc áo blouse, quần tây hoặc chân váy, giày kín, màu trung tính. Tránh trang phục quá thể thao hoặc phụ kiện gây chú ý. Nếu có phỏng vấn kỹ thuật trực tuyến, chuẩn bị camera, ánh sáng, mạng ổn định và màn hình sạch.

Mang theo sẵn ba dự án có thể trình bày trong không quá năm phút, một bản vẽ kiến trúc đã che thông tin nhạy cảm và một danh sách câu hỏi cần giải đáp.

Lộ trình ôn thi

1. Mục tiêu sau 1–2 tuần

Cuối kỳ ôn tập, ứng viên cần có các đầu ra sau:

  • Một trang phân tích kiến trúc giao diện thông minh.
  • Hai bài lập trình có kiểm thử.
  • Một bài về hiệu năng và khả năng tiếp cận.
  • Một tài liệu chuyển yêu cầu nghiệp vụ thành giải pháp kỹ thuật.
  • Sáu câu chuyện phỏng vấn theo cấu trúc tình huống – nhiệm vụ – hành động – kết quả.
  • Danh sách 20 câu hỏi cần hỏi nhà tuyển dụng.

Quy tắc ôn mỗi ngày: 45 phút lý thuyết, 90 phút viết mã, 30 phút trả lời miệng và 15 phút ghi lại điểm yếu.

2. Lộ trình 14 ngày

Ngày 1: Chẩn đoán và đọc kỹ tin tuyển dụng

  • Xác định mức độ đáp ứng yêu cầu ít nhất 5 năm.
  • Lập bảng kỹ năng theo ba mức: thành thạo, có thể phát biểu, còn yếu.
  • Chuẩn bị ba dự án mạnh nhất.
  • Viết câu trả lời cho câu hỏi “Vì sao bạn phù hợp?”.

Ngày 2–3: JavaScript và jQuery

Ôn lại:

  • Phạm vi biến, đóng gói, hàm, lớp, đối tượng và nguyên mô hình.
  • Ngữ cảnh lời gọi hàm.
  • Vòng lặp sự kiện và cơ chế lập lịch tác vụ.
  • Lời hứa, `async` và `await`, xử lý lỗi.
  • Mô hình đối tượng tài liệu, sự kiện, sự kiện lên ủy quyền và vòng đời thành phần.
  • Quản lý bộ nhớ và rò rỉ.
  • jQuery: bộ chọn, sự kiện, thao tác tập thể và lời gọi bất đồng bộ.

Bài thực hành: xây dựng bộ lọc bảng giao dịch không phụ thuộc thư viện, sau đó viết lại một phần bằng jQuery để so sánh.

Ngày 4: HTML và CSS hiện đại

  • HTML có ngữ nghĩa và biểu mẫu.
  • Cú pháp CSS, đặc tính, kế thừa, biến và truy vấn.
  • Bố cục linh hoạt, lưới, vị trí và tràn nội dung.
  • Thiết kế responsive, vùng chạm và nội dung thay thế.
  • Thực tế sửa lỗi tương thích trình duyệt.

Bài thực hành: xây dựng một thẻ tài khoản và bảng giao dịch responsive không cần khung giao diện.

Ngày 5: Khung giao diện và quản lý trạng thái

Chọn đúng một khung giao diện đang có trong hồ sơ, chẳng hạn React, Angular hoặc Vue. Ôn:

  • Thành phần và thuộc tính.
  • Vòng đời cập nhật.
  • Quản lý trạng thái cục bộ và trạng thái từ xa.
  • Tải song song, hủy tác vụ và xử lý lỗi.
  • Định tuyến và bảo vệ luồng.
  • Kiểm thử thành phần.

Không cố học nhiều khung cùng lúc. Một khung được hiểu sâu có giá trị hơn nhiều khung chỉ biết cú pháp.

Ngày 6: Kiến trúc giao diện và hệ thống thiết kế

  • Phân tích yêu cầu và trạng thái trang.
  • Tách thành phần theo trách nhiệm.
  • Thiết kế lớp trình bày, lớp nghiệp vụ và lớp tích hợp.
  • Xây dựng thư viện thành phần dùng chung.
  • Kiểm soát phiên bản và tránh sao chép mã.

Đầu ra: sơ đồ kiến trúc một trang có thông tin khách hàng và danh sách giao dịch.

Ngày 7: Thiết kế trải nghiệm và khả năng tiếp cận

  • Thiết kế dựa trên nhu cầu nghiệp vụ và người sử dụng.
  • Trạng thái tải, rỗng, lỗi và thành công.
  • Nhãn, thông báo lỗi, tiêu điểm bàn phím và trình đọc màn hình.
  • Tương phản màu, tương tác không dựa vào màu.
  • Duy trì nhận diện thương hiệu nhưng tránh thiết kế quá cứng nhắc.

Ngày 8: Kiểm thử

  • Kiểm thử thành phần, tích hợp và đầu-cuối.
  • Dữ liệu mô phỏng và dữ liệu rỗng.
  • Kiểm thử tương tác bàn phím và biểu mẫu.
  • Tìm hiểu kiểm thử trình duyệt và phát hiện lỗi hồi quy.

Đầu ra: ít nhất mười trường hợp kiểm thử cho luồng xem danh sách giao dịch.

Ngày 9: Hiệu năng và bảo mật phía trình duyệt

  • Tối ưu tài nguyên, mã nguồn và tuyến tải.
  • Tải chậm và phân mảnh mã.
  • Bộ nhớ đệm và chiến lược vô hiệu hóa bộ nhớ đệm.
  • Chèn mã từ xác thực, giả mạo yêu cầu giữa trang và quản lý bí mật.
  • Không lưu dữ liệu nhạy cảm trong bộ nhớ cục bộ.
  • Rủi ro của thư viện bên thứ ba và tích hợp các bản vá.

Ngày 10: Tài liệu kỹ thuật

Tạo một tài liệu mẫu gồm:

  • Mục tiêu và phạm vi.
  • Thuật ngữ nghiệp vụ.
  • Yêu cầu chức năng và phi chức năng.
  • Lưu đồ người dùng.
  • Sơ đồ trang và bố cục.
  • Kiến trúc mã nguồn.
  • Lỗi thường gặp và cách xử lý.
  • Tiêu chí chấp nhận.

Ngày 11: Kiến thức ngân hàng số

Tập trung vào trải nghiệm vận hành, không cần học sâu toàn bộ quy định:

  • Định danh khách hàng.
  • Quản lý tài khoản và sản phẩm.
  • Luồng giao dịch và trạng thái giao dịch.
  • Đăng nhập, xác thực lại và đăng xuất.
  • Thông báo và bảo mật giao dịch.
  • Quyền riêng tư, thu thập tối thiểu và dấu vết kiểm toán.
  • Nguyên tắc không dùng dữ liệu thật trong môi trường phát triển.

Ngày 12: Thiết kế hệ thống và lập luận kỹ thuật

Chuẩn bị sẵn ba câu trả lời:

1. Tại sao chọn kiến trúc hiện tại?
2. Điều gì sẽ hỏng khi số người dùng tăng gấp mười lần?
3. Làm thế nào cân bằng tốc độ phát triển với khả năng bảo trì dài hạn?

Ngày 13: Lập trình dưới áp lực thời gian

  • 30 phút đọc yêu cầu.
  • 45 phút xây dựng luồng chính.
  • 30 phần xử lý trạng thái lỗi và responsive.
  • 15 phút kiểm thử.
  • 10 phút giải thích quyết định thiết kế.

Ưu tiên luồng quan trọng và chất lượng giao diện trước khi thêm tính năng thừa.

Ngày 14: Mô phỏng toàn bộ phỏng vấn

  • 10 phút trình bày hồ sơ.
  • 30 phút câu hỏi kỹ thuật.
  • 45 phút thiết kế hệ thống.
  • 45 phút lập trình.
  • 15 phút thảo luận tình huống nghiệp vụ.
  • 15 phút câu hỏi dành cho nhà tuyển dụng.
  • Ghi âm hoặc ghi chú để xác định năm câu trả lời cần cải thiện.

3. Tài liệu tham khảo

  • Tài liệu web Mozilla Developer Network cho HTML, CSS và JavaScript.
  • Tài liệu chính thức của khung giao diện đang dùng trong hồ sơ.
  • Sổ tay TypeScript nếu vị trí sử dụng TypeScript.
  • Tài liệu API và hướng dẫn nâng cấp của jQuery.
  • Web.dev cho hiệu năng và chỉ số hiệu quả trải nghiệm web.
  • Hướng dẫn Khả năng Tiếp cận Nội dung số của Tổ chức Chuẩn Web Quốc tế.
  • Tài liệu Kiểm thử JavaScript dùng truy vấn theo hành vi và Kiểm thử tích hợp thành phần nếu liên quan.
  • Dự án Mở nguồn về Bảo mật Ứng dụng Web, phần rủi ro phía trình duyệt.
  • Tài liệu chính thức Git về nhánh, hợp nhất, xung đột và đánh giả mã.
  • Tài liệu công khai của Techcombank về sản phẩm số và các tài liệu chính thức về bảo mật thanh toán của Ngân hàng Nhà nước.

4. Lộ trình rút gọn nếu chỉ có bảy ngày

  • Ngày 1: chẩn đoán và hồ sơ.
  • Ngày 2: JavaScript, jQuery và trình duyệt.
  • Ngày 3: HTML, CSS, responsive và khả năng tiếp cận.
  • Ngày 4: khung giao diện, kiến trúc và trạng thái.
  • Ngày 5: kiểm thử, hiệu năng và bảo mật.
  • Ngày 6: tài liệu và nghiệp vụ ngân hàng.
  • Ngày 7: lập trình và phỏng vấn mô phỏng.

Tư vấn nghề nghiệp

1. Cách định vị bản thân

Ứng viên nên tự định vị là kỹ sư giao diện cấp cao có khả năng sở hữu sản phẩm, thiết kế kiến trúc và ảnh hưởng đến chất lượng ở cấp nhóm, thay vì chỉ là người viết giao diện theo thiết kế sẵn có. Vị trí chức danh là Senior Officer nhưng mô tả cho thấy vai trò chuyên môn sâu. Vì vậy hãy nhấn mạnh bốn năng lực:

1. Giao diện đã vận hành với quy mô và độ tin cậy thực tế.
2. Khả năng chuyển yêu cầu nghiệp vụ thành thiết kế và tài liệu.
3. Kỹ năt cân bằng thẩm mỹ, chức năng, hiệu năng và khả năng bảo trì.
4. Ảnh hưởng đến nhóm thiết kế, phát triển phía máy chủ và các bên liên quan.

2. Lộ trình phát triển trong 12–24 tháng

Trong 90 ngày đầu

  • Hiểu quy trình phê duyệt, kiểm thử, phát hành và ứng cứu sự cố.
  • Nắm cấu trúc sản phẩm, khách hàng nội bộ và đối tượng sử dụng bên ngoài.
  • Xây dựng danh sách tài liệu còn thiếu hoặc không rõ.
  • Đề xuất một cải tiến nhỏ có bằng chứng rõ, chẳng hạn giảm thời gian tải, giảm lỗi tái phát hoặc hoàn thiện kiểm thử.

Từ tháng 4 đến tháng 12

  • Sở hữu một luồng sản phẩm quan trọng từ yêu cầu đến phát hành.
  • Chuẩn hóa một nhóm thành phần hoặc quy tắc phát triển giao diện.
  • Dẫn dắt thiết kế kỹ thuật và phản biện yêu cầu cùng nhóm thiết kế.
  • Xây dựng bộ chỉ số chất lượng: tốc độ phát hành, tỷ lệ lỗi tái phát, mức độ bao phủ kiểm thử, sự cố và khả năng tiếp cận.
  • Hỗ trợ tuyển dụng và huấn luyện kỹ sư mới.

Từ năm thứ hai

Có hai hướng chính:

  • Chuyên sâu: Kỹ sư dẫn dắt kỹ thuật, kỹ sư cấp cao hoặc kiến trúc sư với ảnh hưởng xuyên nhiều nhóm.
  • Quản lý: Quản lý nhóm phát triển giao diện, cần bổ sung kỹ năng tuyển dụng, đào tạo, phân bổ năng lực và giao tiếp với quản lý cấp cao.

Với tin tuyển dụng này, hãy hỏi rõ để xác định đây là đường chuyên sâu hay hướng chuyển quản lý.

3. Mức lương và thưởng tham khảo tại Hà Nội

> Mọi số liệu lương và thưởng dưới đây chỉ là ước tính tham khảo; mức lương có thể thay đổi tùy ngân hàng và thời điểm.

Kinh nghiệm và phạm vi trách nhiệm Mức lương cứng trước thuế hằng tháng Thông tin cần xác minh
Khoảng 5–7 năm, đã vận hành nhiều dự án Khoảng 30–45 triệu đồng Phạm vi dự án, quy mô nhóm, khung công nghệ và thưởng hiệu quả công việc
Khoảng 7–10 năm, kiến trúc tốt, ảnh hưởng nhiều nhóm Khoảng 40–60 triệu đồng Mức độ sở hữu kỹ thuật, kinh nghiệm ngân hàng và khả năng dẫn dắt
Kỹ sư dẫn dắt hoặc cấp cao trên diện rộng Khoảng 55–80 triệu đồng hoặc cao hơn Quyền quyết định, số nhóm phụ thuộc và kết quả kinh doanh

Một ứng viên có từ 5 năm trở lên, kỹ thuật tốt và có dự án quy mô lớn có thể đặt mức tham khảo khoảng 40–50 triệu đồng trước thuế mỗi tháng, nhưng cần điều chỉnh theo địa điểm, cấp bậc và chính sách lương thực tế. Thưởng hiệu quả công việc có thể được tính theo tháng lương, nhưng không nên coi là khoản cố định nếu chưa có văn bản xác nhận.

Khi thương lượng, cần hỏi riêng:

  • Lương cứng trước thuế hằng tháng.
  • Thưởng hiệu quả công việc và điều kiện nhận.
  • Phụ cấp và chi phí đào tạo.
  • Bảo hiểm và chế độ sức khỏe.
  • Chính sách tăng lương, thử việc và ngày nghỉ phép.
  • Thưởng giới thiệu và thưởng dự án.

4. Chỉ số hiệu quả có thể đề xuất

Tin tuyển dụng không công bố chỉ số hiệu quả công việc chính thức. Ứng viên có thể đề xuất nhóm chỉ số phù hợp với vai trò:

  • Phần việc triển khai đúng hạn và không phát sinh lỗi nghiêm trọng.
  • Số lỗi tái phát trước và sau khi triển khai.
  • Thời gian tải và độ trễ tương tác của luồng quan trọng.
  • Tỷ lệ tuân thủ tiêu chuẩn khả năng tiếp cận.
  • Tỷ lệ tái sử dụng thành phần và giảm trùng lặp mã.
  • Chất lượng và thời điểm cập nhật tài liệu.
  • Mức độ hài lòng của nghiệp vụ và khách hàng nội bộ.

Đây là đề xuất để trao đổi, không phải số liệu chính thức của Techcombank.

5. Kỹ năng nên phát triển thêm

  • Kiến thức TypeScript nếu hồ sơ hiện tại còn yếu.
  • Kiểm thử tự động và kiểm thử thành phần.
  • Khả năng tiếp cận theo Hướng dẫn Khả năng Tiếp cận Nội dung số.
  • Đo lường hiệu năng bằng công cụ trình duyệt.
  • Kiến thức bảo mật phía trình duyệt.
  • Khả năng viết tài liệu kiến trúc và đánh giá giải pháp.
  • Tiếng Anh để làm việc với đối tác công nghệ và tài liệu quốc tế.
  • Kỹ năng trình bày quyết định kỹ thuật với đối tượng không chuyên môn.

6. Điểm cần xác minh trước khi ứng tuyển

Phần mô tả có một số dấu hiệu chưa hoàn chỉnh: cụm yêu cầu kinh nghiệm bị cắt, chưa nêu khung giao diện, không có phúc lợi, giờ làm, chỉ số hiệu quả và mức lương. Đây không nhất thiết là dấu hiệu tiêu cực, nhưng ứng viên nên hỏi rõ:

  • Tỷ lệ công việc jQuery và công nghệ hiện đại.
  • Khung công nghệ và kiến trúc tổng thể.
  • Phạm vi vai trò cá nhân so với dẫn dắt kỹ thuật.
  • Có chế độ trực sự cố ngoài giờ không.
  • Tiêu chuẩn hiệu năng, bảo mật và khả năng tiếp cận.
  • Cách thưởng, lương và lộ trình tăng cấp.

Một mức độ chuẩn bị tốt là có thể trả lời các câu hỏi này bằng thông tin thực tế, đồng thời thành thật về những điểm còn thiếu.

Câu hỏi thường gặp

Tôi đang là sinh viên, chưa có kinh nghiệm thực tế. Có nên ứng tuyển vị trí yêu cầu ít nhất 5 năm không?

Thông thường nên cơ hội rất thấp vì tin tuyển dụng yêu cầu ít nhất 5 năm kinh nghiệm phát triển giao diện và vai trò là cấp cao. Ứng tuyển chỉ hợp lý nếu bạn đã tham gia dự án thật, có sản phẩm đang vận hành, đồng thời làm được phần kiến trúc và tài liệu. Nếu chưa đủ kinh nghiệm, hãy nhắm các vị trí kỹ sư giao diện mới ra trường, thực tập chuyển đổi hoặc nội bộ tại một nhóm phát triển nhỏ để tích lũy ít nhất 5 năm. Không nên khai khống thời gian.

Tôi có 3 năm kinh nghiệm nhưng đã phát triển nhiều dự án thực tế. Tôi có nên ứng tuyển?

Bạn vẫn nên ứng tuyển nếu ba năm đó sản sinh bằng chứng tốt, nhưng phải chuẩn bị câu trả lời thẳng thắn về khoảng cách 2 năm. Điểm cộng có thể là đã làm việc với JavaScript, CSS, jQuery, thiết kế giao diện, kiểm thử và phát hành sản phẩm. Hãy mô tả quy mô dự án, số người dùng, số lỗi đã sửa, hiệu năng đã cải thiện và quyết định kiến trúc bạn tự đưa ra. Đừng biến ba năm thành năm năm; hãy đề xuất mức lương và cấp bậc theo đúng kinh nghiệm hiện có.

Tôi đang chuyển từ lập trình phía máy chủ sang phát triển giao diện. Hướng vào vị trí này có hợp lý không?

Có thể nếu bạn đã từng xây dựng giao diện thật chứ không chỉ có kiến thức phía máy chủ. Lợi thế của bạn là hiểu giao diện lập trình ứng dụng, cơ sở dữ liệu và xác thực; điểm yếu có thể là JavaScript trình duyệt, CSS, khả năng tiếp cận và thiết kế cấu trúc trang. Hãy hoàn thành một hoặc hai dự án giao diện hoàn chỉnh, có tài liệu và kiểm thử. Trong phỏng vấn, giải thích rõ cách chuyển đổi đồng thời không làm giảm độ tin cậy sản phẩm. Với mục tiêu cấp cao cần ít nhất 5 năm, khoảng cách kinh nghiệm vẫn là rào cản lớn.

Tôi đã có 7 năm kinh nghiệm và muốn thăng tiến lên vị trí kỹ sư cấp cao. Vị trí này có phù hợp không?

Mức kinh nghiệm phù hợp với yêu cầu tối thiểu. Điểm cần chứng minh là bạn đã vượt trên vai trò viết mã hằng ngày: từng thiết kế kiến trúc, dẫn dắt thảo luận với nhóm thiết kế và phát triển phía máy chủ, cải tiến hiệu năng, xử lý tài liệu và ngăn lỗi tái phát. Hãy chuẩn bị hai dự án cho thấy ảnh hưởng xuyên nhiều nhóm. Vì tin tuyển dụng không nêu cấp dưới trực tiếp, hãy hỏi rõ đây là lựa chọn chuyên sâu, kỹ sư dẫn dắt hay chuyển sang quản lý.

Mức lương hợp lý để thương lượng cho vị trí này tại Hà Nội là bao nhiêu?

Với khoảng 5–7 năm, một mức tham khảo có thể là 30–45 triệu đồng trước thuế mỗi tháng; với khoảng 7–10 năm, khả năng kỹ thuật và ảnh hưởng kiến trúc tốt, có thể tham khảo 40–60 triệu đồng. Thưởng hiệu quả công việc cần được xác nhận riêng, không nên coi là khoản cố định. Mức lương có thể thay đổi tùy ngân hàng và thời điểm. Trước khi nêu con số, hãy chuẩn bị ba mức: mức mong muốn, mức có thể chấp nhận và mức tối thiểu hợp lý. Đồng thời hỏi về lương cứng, thưởng, phụ cấp, bảo hiểm, thử việc và chính sách tăng lương.

Giờ làm, ngày nghỉ và chỉ số hiệu quả công việc của vị trí này là gì?

Dữ liệu tuyển dụng không cung cấp các thông tin này. Ứng viên nên hỏi trực tiếp giờ làm chính, lịch làm thứ bảy, chính sách làm thêm, ca trực sự cố, số ngày phép, thời gian thử việc và tiêu chí đánh giá trong tháng đầu. Với vai trò này, chỉ số hiệu quả có khả năng liên quan đến thời gian giao, chất lượng bàn giao, số lỗi tái phát, hiệu năng, khả năng tiếp cận và chất lượng tài liệu, nhưng cần được quản lý xác nhận. Không nên đồng ý với mức lương khi chưa rõ tổng thu nhập và thời gian làm việc.

Tôi không có dự án ngân hàng. Danh mục dự án của tôi có đủ để ứng tuyển không?

Có, nếu dự án chứng minh các năng lực gần với công việc. Hãy chọn ba dự án: một sản phẩm người dùng phức tạp, một bài về hiệu năng hoặc kiến trúc, và một dự án có kiểm thử cùng tài liệu. Bạn có thể dùng dữ liệu tài chính mô phỏng, chẳng hạn bảng giao dịch, hạn mức, biểu đồ hoặc quy trình phê duyệt tín dụng; tuyệt đối không dùng dữ liệu khách hàng thật. Với mỗi dự án, giải thích vấn đề, sản phẩm, số người dùng, quyết định kiến trúc, biện pháp bảo mật, cách kiểm thử và kết quả đo được.

Kiến thức ngân hàng có cần thiết không nếu tôi đã có 6 năm phát triển giao diện?

Không nhất thiết phải là chuyên gia ngân hàng, nhưng bạn cần hiểu nghiệp vụ đủ để không tạo giao diện sai nghiệp vụ hoặc thiếu kiểm soát. Hãy nắm luồng định danh, sản phẩm, giao dịch, xác thực, thông báo, quyền riêng tư và định danh pháp lý. Trong phỏng vấn, cho thấy bạn biết đặt câu hỏi khi chuyển yêu cầu thành giao diện: ai được thực hiện, dữ liệu nào hiển thị, trạng thái thất bại ra sao, cần phê duyệt gì và dữ liệu nào tuyệt đối không lưu. Kinh nghiệm ngành tài chính sẽ là lợi thế rõ rệt.

Tin tuyển dụng yêu cầu jQuery nhưng tôi chỉ biết khung giao diện hiện đại. Tôi có nên ứng tuyển?

Bạn vẫn có thể ứng tuyển nếu thành thạo JavaScript hiện đại và có khả năng đọc mã jQuery. Trước phỏng vấn, dành hai ngày ôn bộ chọn, sự kiện, thao tác tập thể, lời gọi bất đồng bộ, quản lý sự kiện và cách tách phần DOM khỏi nghiệp vụ. Chuẩn bị một ví dụ đã làm việc với hệ thống kế thừa hoặc kế hoạch chuyển đổi. Câu trả lời tốt là: bạn hiểu jQuery đủ để bảo trì và giảm rủi ro, đồng thời biết dùng JavaScript hiện đại để cải tiến có kiểm soát, không khẳng định mọi hệ thống cũ nên viết lại toàn bộ.

Tôi nên trả lời câu hỏi “Vì sao chọn Techcombank?” như thế nào?

Tránh chỉ nói về lương, thương hiệu hoặc sự ổn định. Một câu trả lời tốt cần kết nối ba yếu tố: bạn thích sản phẩm có tác động trực tiếp đến khách hàng, kinh nghiệm của bạn phù hợp với yêu cầu sở hữu giao diện và kiến trúc, và bạn quan tâm đến yêu cầu bảo mật, tuân thủ, khả năng tiếp cận trong ngân hàng. Hãy nói thêm điều gì bạn có thể đóng góp trong 90 ngày đầu, chẳng hạn cải thiện hiệu năng, tài liệu, kiểm thử hoặc tính nhất quán giao diện. Nếu chỉ dùng Techcombank để ghi tên vào hồ sơ, hãy chọn công ty khác phù hợp hơn.

Nếu được nhận việc, ba việc nên ưu tiên trong 90 ngày đầu là gì?

Ba ưu tiên hợp lý là: hiểu và ổn định một luồng sản phẩm quan trọng; xây dựng bản đồ kiến trúc, yêu cầu và các điểm rủi ro hiện tại; chọn một cải tiến có thể đo được như giảm lỗi, cải thiện tốc độ tải, tăng độ bao phủ kiểm thử hoặc hoàn thiện khả năng tiếp cận. Trước khi thay đổi lớn, hãy quan sát quy trình, xác định chủ sở hữu và đo trạng thái ban đầu. Sau đó mới đề xuất thay đổi, giảm rủi ro phát hành và cập nhật tài liệu. Điều này thể hiện phong cách cấp cao: sở hữu vấn đề nhưng vẫn tôn trọng hệ thống đang vận hành.