Tìm việc xin chào các anh chị và các bạn cùng đến với cẩm nang tìm việc của timviec.net.vn Để giúp bạn xây dựng bản mô tả chi tiết về bài test 3 giờ cho nhân lực IT, tôi cần thêm một chút thông tin để điều chỉnh cho phù hợp với vị trí cụ thể mà bạn đang tuyển dụng. Vui lòng cho tôi biết:
1. Vị trí cụ thể bạn đang tuyển dụng là gì?
(Ví dụ: Lập trình viên Front-end, Lập trình viên Back-end, Kỹ sư DevOps, Chuyên viên Kiểm thử,…)
2. Ngôn ngữ lập trình/Công nghệ chính mà vị trí này sử dụng là gì?
(Ví dụ: JavaScript, Python, Java, .NET, AWS, Azure,…)
3. Mức độ kinh nghiệm bạn mong muốn ở ứng viên là gì?
(Ví dụ: Fresher/Junior, Middle, Senior,…)
4. Mục tiêu chính của bài test này là gì?
(Ví dụ: Đánh giá khả năng tư duy giải quyết vấn đề, kiểm tra kiến thức chuyên môn, đánh giá kỹ năng coding,…)
Trong khi chờ đợi thông tin từ bạn, tôi sẽ đưa ra một cấu trúc chung và một vài ví dụ để bạn có thể hình dung:
Cấu trúc chung của bài test 3 giờ cho nhân lực IT:
Phần 1: Thông tin chung (5 phút)
Giới thiệu về bài test: Mục đích, thời gian làm bài, các lưu ý.
Hướng dẫn nộp bài.
Phần 2: Kiểm tra kiến thức cơ bản (30 phút)
Câu hỏi trắc nghiệm (Multiple Choice Questions – MCQs) hoặc câu hỏi ngắn.
Kiểm tra kiến thức về:
Cấu trúc dữ liệu và giải thuật (Data Structures and Algorithms)
Nguyên lý lập trình hướng đối tượng (Object-Oriented Programming – OOP)
Các khái niệm cơ bản liên quan đến ngôn ngữ/công nghệ chính.
(Tùy chọn) Kiến thức về hệ điều hành, mạng máy tính, cơ sở dữ liệu.
Phần 3: Bài tập lập trình (150 phút)
Bài tập 1 (60 phút):
Yêu cầu rõ ràng, tập trung vào một kỹ năng cụ thể.
Ví dụ: Xây dựng một API đơn giản, triển khai một thuật toán sắp xếp, xử lý dữ liệu từ một file.
Bài tập 2 (90 phút):
Yêu cầu phức tạp hơn, đòi hỏi ứng viên phải kết hợp nhiều kỹ năng.
Ví dụ: Xây dựng một ứng dụng nhỏ hoàn chỉnh, giải quyết một bài toán thực tế.
Phần 4: Câu hỏi mở (30 phút)
Các câu hỏi về kinh nghiệm làm việc, cách ứng viên tiếp cận vấn đề, hoặc các kiến thức nâng cao.
Ví dụ:
Bạn đã từng gặp khó khăn gì trong quá trình lập trình và bạn đã giải quyết nó như thế nào?
Bạn có thể chia sẻ về một dự án mà bạn tự hào nhất?
Bạn có kinh nghiệm làm việc với các công cụ/framework nào khác ngoài những công cụ đã sử dụng trong bài test này?
Phần 5: Kết thúc (5 phút)
Lời cảm ơn và hướng dẫn liên hệ nếu có thắc mắc.
Ví dụ cụ thể (cho vị trí Lập trình viên Front-end sử dụng React, kinh nghiệm Middle):
Phần 1: Thông tin chung (5 phút)
Chào mừng bạn đến với bài test tuyển dụng cho vị trí Lập trình viên Front-end tại [Tên công ty]!
Mục đích:
Đánh giá khả năng lập trình Front-end của bạn, đặc biệt là với React, cũng như khả năng tư duy giải quyết vấn đề và làm việc độc lập.
Thời gian:
3 giờ (180 phút).
Lưu ý:
Hãy đọc kỹ yêu cầu của từng bài tập trước khi bắt đầu.
Code của bạn cần rõ ràng, dễ đọc và tuân thủ các coding convention.
Bạn có thể sử dụng các thư viện/framework hỗ trợ, nhưng hãy ghi rõ nguồn gốc.
Trong quá trình làm bài, bạn có thể sử dụng Google và Stack Overflow để tìm kiếm thông tin, nhưng không được sao chép code trực tiếp từ các nguồn này.
Nộp bài:
Vui lòng nén toàn bộ code vào một file zip và gửi về địa chỉ email [Địa chỉ email]. Tiêu đề email ghi rõ: `[Họ tên] – Bài test Front-end`.
Phần 2: Kiểm tra kiến thức cơ bản (30 phút)
Chọn đáp án đúng nhất:
1. Trong React, component nào sau đây được sử dụng để quản lý state?
A. Functional Component
B. Class Component
C. Both A and B
D. Neither A nor B
2. … (Các câu hỏi tương tự về React hooks, props, JSX, lifecycle methods,…)
Điền vào chỗ trống:
1. `__________` là một công cụ build JavaScript phổ biến, được sử dụng để đóng gói các module và tối ưu hóa code.
2. `__________` là một thư viện quản lý state phổ biến trong React, giúp chia sẻ state giữa các component.
Phần 3: Bài tập lập trình (150 phút)
Bài tập 1: Xây dựng một component hiển thị danh sách sản phẩm (60 phút)
Yêu cầu:
Sử dụng React để tạo một component hiển thị danh sách sản phẩm.
Mỗi sản phẩm bao gồm các thông tin: Tên, Mô tả, Giá, Hình ảnh.
Dữ liệu sản phẩm được lấy từ một file JSON (cung cấp sẵn).
Component cần có khả năng hiển thị danh sách sản phẩm một cách trực quan và dễ nhìn.
Sử dụng CSS để tạo style cho component (có thể sử dụng CSS Modules hoặc Styled Components).
File JSON (products.json):
“`json
[
{
“id”: 1,
“name”: “Áo thun”,
“description”: “Áo thun cotton 100%”,
“price”: 100000,
“image”: “https://example.com/ao-thun.jpg”
},
{
“id”: 2,
“name”: “Quần jean”,
“description”: “Quần jean ống đứng”,
“price”: 200000,
“image”: “https://example.com/quan-jean.jpg”
}
]
“`
Bài tập 2: Xây dựng một form tìm kiếm sản phẩm (90 phút)
Yêu cầu:
Sử dụng React để tạo một form tìm kiếm sản phẩm.
Form bao gồm một ô nhập liệu (input) để người dùng nhập từ khóa tìm kiếm.
Khi người dùng nhập từ khóa, danh sách sản phẩm (từ bài tập 1) sẽ được lọc theo từ khóa đó.
Hiển thị thông báo “Không tìm thấy sản phẩm” nếu không có sản phẩm nào khớp với từ khóa tìm kiếm.
Sử dụng `useState` hook để quản lý state của từ khóa tìm kiếm.
Sử dụng `useEffect` hook để thực hiện việc lọc sản phẩm khi từ khóa tìm kiếm thay đổi.
Gợi ý:
Bạn có thể sử dụng hàm `filter` của JavaScript để lọc danh sách sản phẩm.
Phần 4: Câu hỏi mở (30 phút)
1. Bạn đã từng sử dụng các thư viện quản lý state nào khác ngoài `useState` (ví dụ: Redux, Context API)? Hãy so sánh ưu nhược điểm của chúng.
2. Bạn có kinh nghiệm làm việc với các công cụ build nào khác ngoài Webpack (ví dụ: Parcel, Rollup)?
3. Bạn có thể chia sẻ về một dự án Front-end mà bạn tự hào nhất? Bạn đã gặp những thách thức gì trong dự án đó và bạn đã giải quyết chúng như thế nào?
Phần 5: Kết thúc (5 phút)
Cảm ơn bạn đã tham gia bài test! Nếu bạn có bất kỳ thắc mắc nào, vui lòng liên hệ với chúng tôi qua email [Địa chỉ email].
—
Đây chỉ là một ví dụ, bạn cần điều chỉnh nó cho phù hợp với vị trí và yêu cầu cụ thể của bạn. Hãy cung cấp thêm thông tin để tôi có thể giúp bạn tạo ra một bài test hiệu quả hơn!
http://login.ezproxy.lib.lehigh.edu/login?url=https://timviec.net.vn