Khám phá bộ câu hỏi
phỏng vấn ngành IT

Position
React

Danh sách câu hỏi

Bộ câu hỏi phỏng vấn kỹ năng lập trình React

CÂU HỎI KỸ THUẬT 💻(8)

  • question

    Redux là gì? Tại sao phải sử dụng Redux trong ứng dụng React

    Redux là 1 công cụ giúp quản lý các biến global state trong ứng dụng React hay các thư viện JavaScript nào khác. Khi ứng dụng của chúng ta trở nên lớn hơn với hàng trăm hay hàng nghìn components thì việc chia sẻ dữ liệu giữa các Components với nhau cũng trở nên phức tạp hơn. Redux tạo ra 1 store lưu trữ dữ liệu của ứng dụng vào một nơi duy nhất, sau đó bằng cách connect đến store thì Component của chúng ta có thể lấy ra để sử dụng hoặc cập nhật để thay đổi giá trị biến.

    3 thành phần cơ bản trong Redux gồm:
    - Store: Nơi giữ các biến trạng thái của ứng dụng, với mô hình Redux thì sẽ chỉ tồn tại một store duy nhất.
    - Actions: các sự kiện được gửi đến để cập nhật dữ liệu các biến trong store của Redux.
    - Reducers: là các function để lấy ra giá trị (trạng thái) của các biến trong store.
  • question

    React Hook là gì? Bạn đã từng viết custom Hook nào chưa?

    Hooks là những function cho phép bạn sử dụng các biến state và các hàm liên quan đến lifecycle ở trong các functional Components. Hooks giúp giảm lượng code thừa khi phải triển khai lại các logic có thể dùng chung ở nhiều components khác nhau mà cần liên quan đến local state. React cung cấp sẵn cho chúng ta một số các hook hữu ích: useState, useEffect, useContext, useMemo, ….

    Chúng ta cũng có thể tự viết những custom Hook riêng cho mình như ví dụ dưới đây: useWindowSize là 1 hook có tác dụng lấy kích thước của khung trình duyệt web hiện tại.


    import { useState, useEffect } from 'react'

    export const useWindowSize = () => {
    const [windowSize, setWindowSize] = useState({
    width: window.innerWidth,
    height: window.innerHeight,
    })

    useEffect(() => {
    const handler = () => {
    setWindowSize({
    width: window.innerWidth,
    height: window.innerHeight,
    })
    }
    window.addEventListener('resize', handler)

    return () => {
    window.removeEventListener('resize', handler)
    }
    }, [])

    return windowSize
    }
  • question

    Phân biệt khái niệm Component và Element trong React?

    Khái niệm React Element dùng để chỉ những gì được hiển thị lên màn hình như một nút bấm (button), một ô nhập liệu (input) hay cả một modal đăng nhập. Một Element có thể chứa nhiều elements khác, giống như trên modal đăng nhập thì có thể chứa ô input nhập usernam và password cùng với cả button thực hiện đăng nhập. Trong source code, để tạo ra được React Element thì chúng ta sẽ sử dụng một function hoặc class để render ra nó, và phần function hay class đó được gọi là React Component.

    React cung cấp function tạo ra Element như sau:

    const Button = ({ onLogin }) => React.createElement(
    'div',
    { id: 'login-btn', onClick: onLogin },
    'Login'
    )

    Trong đoạn code trên Button là một React Component và sẽ thực hiện việc render ra màn hình một Element là thẻ div với các thuộc tính như id hay onClick được truyền vào.
  • question

    React là gì? Những tính năng chính của React.

    React là một thư viện mã nguồn mở viết bằng ngôn ngữ JavaScript (JS), được Facebook phát triển từ hơn 10 năm nay. Nó được xây dựng bằng cách tiếp cận theo hướng dựa trên thành phần (component-based) giúp có thể dễ dàng tái sử dụng lại các phần UI/UX trên các màn hình khác nhau. React thích hợp cho việc tạo ra các ứng dụng một trang (Single Page App) dành cho cả web và thiết bị di động, vì thế hiện nay có rất nhiều các công ty lựa chọn React làm thư viện để phát triển các ứng dụng của mình.

    Các tính năng chính của React bao gồm:

    Sử dụng DOM ảo (VirtualDOM) để quản lý sự thay đổi và cập nhật trạng thái của các đối tượng trên DOM thật. VirtualDOM sẽ xác nhận những thành phần cần phải cập nhật và thực hiện việc render lại thành phần đó trên DOM thật thay vì cập nhật lại tất cả cùng một lúc, từ đó giúp hiệu năng của các ứng dụng React trở nên tốt hơn.
    Component-Based: với React thì tất cả đều được tạo nên từ components (thành phần). Một trang web phức tạp như Facebook cũng được tạo nên từ hàng nghìn components độc lập, dễ dàng tái sử dụng hay chỉnh sửa mà không ảnh hưởng đến các thành phần khác.
    Liên kết dữ liệu một chiều: khi thiết kế ứng dụng React, các component con sẽ được lồng trong component cha, dữ liệu sẽ được truyền từ cha xuống con theo một chiều nhanh chóng và thống nhất
  • question

    Sự khác nhau giữa ReactJs và React Native?

    React Native được team phát triển Facebook ra mắt 2 năm sau khi ra mắt ReactJs, nó được dùng để phát triển các ứng dụng dành cho mobile (không phải chạy trên nền web). React Native và ReactJs có chung nguyên lý phát triển, ngôn ngữ sử dụng, các đặc trưng của React vì thế nên có thể dễ dàng học và sử dụng cả hai nền tảng này cùng lúc.

    Điểm khác nhau ở đây là trong khi React Native là một framework hoàn chỉnh có thể giao tiếp với native API để build ra các ứng dụng chạy trên nền tảng di động như Android hay iOS; thì ReactJs vốn dĩ chỉ là một thư viện UI dành cho web, nó cần thêm một số các thư viện khác giúp cho việc build, setup môi trường thì mới có thể tạo ra được một ứng dụng hoàn chỉnh. Một điểm khác nhau nữa trong cách viết code đó là việc React Native không sử dụng HTML vì nó không phải viết để chạy trên web như ReactJs, thay vào đó nó cung cấp cho các lập trình viên các component hoạt động tương tự (hầu hết là được biến đổi từ các phần tử tương đương trong HTML).
resume passed

Bạn chưa có CV để ứng tuyển?

Hãy để TopDev giúp bạn xây dựng hoàn chỉnh CV chuẩn developer để tăng khả năng tiến vào vòng phỏng vấn.

CÂU HỎI KỸ NĂNG MỀM 💼 (38)

  • question

    Bạn hiểu thế nào về điểm mạnh?

    Thuật ngữ điểm mạnh khá gần gũi nhưng trước tiên, cùng xem nó có ý nghĩa thế nào. Điểm mạnh (Strengths) là những thế mạnh của bạn về tố chất, các kỹ năng, kinh nghiệm hoặc trình độ chuyên môn nổi trội của bạn tương ứng trong giới hạn khả năng được vận dụng vào cuộc sống, quá trình thực hiện công việc của bạn.

    Mỗi người chúng ta đều có những điểm mạnh khác nhau, khó trộn lẫn. Và tùy vào tình huống thực tế, những điểm mạnh sẽ được phát huy, cân bằng một cách tốt nhất. Những điểm mạnh cơ bản mà bạn có thể biết bao gồm:

    - Năng lực chuyên môn giỏi

    - Tính trung thực cao

    - Có trách nhiệm - ý thức cao trong công việc; nhiệt huyết và niềm đam mê công việc

    - Trình độ ngoại ngữ tốt (Đạt tiêu chuẩn giao tiếp quốc tế - Tiếng Anh, Tiếng Nhật, Tiếng Trung,...

    - Khả năng học hỏi, ứng biến linh hoạt với môi trường, nhạy bén với cái mới

    - Sức sáng tạo

    - Tinh thần kỷ luật cao, có đạo đức nghề nghiệp

    - Sự kiên nhẫn

    - Hòa đồng - thân thiện với mọi người xung quanh

    - Mức độ quyết tâm hoàn thành công việc

    - Kỹ năng mềm

    - Làm việc có nguyên tắc, đúng giờ, chuyên nghiệp

    - Sự năng động

    - Kỹ năng lên kế hoạch và giải quyết vấn đề tốt

    - Thành thạo kỹ năng tin học

    - Sở hữu những năng khiếu về nghệ thuật (ca hát, làm MC. diễn xuất,...)
  • question

    Vậy thế nào là điểm yếu?

    Điểm yếu (Weaknesses) là những điểm hạn chế, những điểm mà bản thân bạn cảm tấy không tự tin về chúng. Cũng có thể hiểu một phần nó không phải trường chính mà bạn ứng dụng vào công việc lẫn cuộc sống.

    Điểm yếu thường bao gồm:
    - Kỹ năng hay năng lực chuyên môn nghề nghiệp chưa tốt

    - Chưa có sự định hướng hay mục tiêu rõ rãng trong công việc

    - Trình độ ngoại ngữ chưa đảm bảo tiêu chuẩn cơ bản (Đọc, viết, giao tiếp, nghe)

    - Kỹ năng tin học văn phòng chưa tốt

    - Kỹ năng giao tiếp chưa hoàn thiện, còn sợ và e dè - không tự tin trước đám đông

    - Những thói quen tích cực ảnh hưởng đến các tính trách nhiệm, ý thức tự giác, tình thần làm việc,...
  • question

    Trình bày ưu nhược điểm trong CV – Đâu là những điều cần lưu ý?

    Đề làm nổi bật được nội dung điểm mạnh điểm yếu của bản thân trong CV, bạn cần chú ý những vấn đề sau:

    Tập trung trình bày các ưu điểm gắn với công việc, không nên lan man. Đừng kể lể quá nhiều sẽ làm nhà tuyển dụng cảm thấy bạn không đáng tin. Trình bày ưu điểm với những từ ngữ đơn giản, tránh việc “bày vẽ” quá nhiều thứ sẽ khó tạo được những thiện cảm cho nhà tuyển dụng.

    Nói như vậy, không cò nghĩa là bạn chị tập trung vào việc trình bày điểm mạnh. Bạn hạy khôn khèo và cân bằng việc đưa các điểm yếu của mình vào CV. Tuy nhiên, hãy gắn nó với những cách thức giúp bạn vượt qua hoặc khắc phục tốt nhất những nhược điểm ấy. Đó là một cách thức thật sự thông minh dành cho bạn.

    Một điều quan trọng nữa mà bạn cần lưu tâm chính là phải thật sự trung thực với những gì mình chia sẻ với nhà tuyển dụng. Không nên nói quá nhiều về điểm mạnh. Vì nếu thế, dường như bạn chỉ đang khoe khoang hoặc đang “thùng rỗng kêu to”. Nhà tuyển dụng họ là những người có cái nhìn tổng quan lẫn chi tiết nhất. Vì thế, việc kiểm chứng tính xác thực về những gì bạn trình bày là một điều hoàn toàn dễ dàng dối với họ.
  • question

    Những câu hỏi thách thức trong buổi phỏng vấn của bạn

    Thách thức tuyển dụng luôn là điều mà mọi ứng viên cần phải trải qua. Và để có thể đồng hành cùng các doanh nghiệp/tổ chức, bạn cần vượt qua những thách thức ấy trong chính buổi phỏng vấn của mình. Và cụ thể là việc cách bạn trả lời câu hỏi: “Anh chị hãy nói về điểm mạnh và điểm yếu của mình”.

    Nhiều thách thức được đặt ra trong chính quá trình giới thiệu bản thân khi phỏng vấn. Việc của ứng viên là cần bình tĩnh để xử lý các thách thức. Bạn không nên hoang mang để rồi cảm thấy bị bế tắc trong chính những thách thức ấy. Hãy có cách ứng xử thông mình, hiệu quả phỏng vấn hầu như đạt mức tuyệt đối. Tuy nhiên, nhiều câu trả lời dường như chỉ tập trung vào việc đào sâu các vấn đề nhạy cảm liên quan đến công việc. Cụ thể, nhiều ứng viên sẽ đề cập đến mức lương và các chế độ thuộc về mặt quyền lợi của nhân viên. Từ đây, các ý kiến khác nhau được bàn luận. Hãy cẩn trọng để không phải mắc phải cấm kỵ khi đi phỏng vấn nhé!
  • question

    Bạn muốn mình là ai và như thế nào trong 5 năm tới?

    Nhiều ứng viên đã trình bày các kế hoạch không một tí liên quan gì đến công việc như: mua nhà, đi du lịch, kinh doanh,…

    Hoặc thậm chí, ứng viên bộc lộ nhiều sự cường điệu trong cách dẫn dắt câu chuyện. Chẳng hạn như việc chia sẻ rằng họ sẽ là một người có đam mê với công việc nhiều nhất; làm việc chăm chỉ nhất. Tồi tệ hơn là có nhiều ứng viên chỉ cười trừ vì không biết phải trả lời như thế nào. Vậy đâu là lỗi khi đi phỏng vấn, gây ấn tượng lúc phỏng vấn?

    Bạn phải thật sự cẩn trọng trong cách trả lời của mình. Nếu không, bạn sẽ thất bại về vấn đề tri nhận các yêu cầu phản hồi thông điệp. Dù bạn cố tình hay vô tình (thiếu sự trải nghiệm), bạn cũng không nên khiến mình thiếu chuyên nghiệp.

Việc làm phù hợp với bạn

Flashship Logistics LLC

4 giờ trước

Lập Trình Viên Java (Spring Boot)

Đăng nhập để xem mức lương

Quận Nam Từ Liêm, Hà Nội

CÔNG TY TNHH METADATA SOLUTIONS

9 giờ trước

Full-stack Developer (Web + Mobile)

Đăng nhập để xem mức lương

Quận 3, Hồ Chí Minh

Bravestars Games

8 giờ trước

Game Developer

Đăng nhập để xem mức lương

Quận Thanh Xuân, Hà Nội

GEEK Up

8 giờ trước

Senior Product Analyst (HCM or HN)

Đăng nhập để xem mức lương

Quận Phú Nhuận, Hồ Chí Minh

FIX Partner

8 giờ trước

Senior QC Manual

Đăng nhập để xem mức lương

Quận Tân Bình, Hồ Chí Minh

CÔNG TY CỔ PHẦN CÔNG NGHỆ FOXAI

4 giờ trước

Lập Trình Viên Backend

Đăng nhập để xem mức lương

Quận Bắc Từ Liêm, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên viên Thẩm định mua sắm CNTT

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

Công ty TNHH Yopaz

6 giờ trước

Technical Leader

Đăng nhập để xem mức lương

Quận Đống Đa, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên viên An toàn thông tin

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên gia Cloud

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

EZTech Global

2 giờ trước

CHUYÊN VIÊN PHÂN TÍCH DỮ LIỆU - DATA ANALYTICS

Đăng nhập để xem mức lương

Quận Nam Từ Liêm, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên gia Kiến trúc CNTT

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên viên Kiến trúc CNTT

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên viên Cloud

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên viên Hệ thống CNTT

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

CÔNG TY CỔ PHẦN SUNTEK

4 giờ trước

UX/UI Designer (Game)

Đăng nhập để xem mức lương

Thành phố Thủ Đức, Hồ Chí Minh

CÔNG TY CỔ PHẦN CÔNG NGHỆ ỨNG DỤNG XANH VIỆT NAM

6 giờ trước

Senior DevOps Engineer

Đăng nhập để xem mức lương

Quận Ba Đình, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên viên Nghiên cứu công nghệ mới

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

Aram Vina

8 giờ trước

KỸ SƯ PHẦN MỀM (C# Developer) - Urgent

Đăng nhập để xem mức lương

Quận Tây Hồ, Hà Nội

Ban Công nghệ BIDV

8 giờ trước

Chuyên viên Quản lý Chuyển đổi số

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

SAVA META

2 giờ trước

Senior Unity Developer (VR)

Đăng nhập để xem mức lương

Quận Hai Bà Trưng, Hà Nội

52 Entertainment

1 ngày trước

Senior Unity Developer (Playable Ads)

Đăng nhập để xem mức lương

Quận 1, Hồ Chí Minh

CÔNG TY TNHH WEAVERS VIETNAM

1 ngày trước

Nhân Viên Kinh Doanh B2B - AI Giáo Dục Ngoại Ngữ (có thể giao tiếp tiếng Hàn)

Đăng nhập để xem mức lương

Quận Nam Từ Liêm, Hà Nội

CÔNG TY TNHH SAMSUNG SDS VIỆT NAM

1 ngày trước

DBA

Đăng nhập để xem mức lương

Quận Cầu Giấy, Hà Nội

CÔNG TY CỔ PHẦN FPT

1 ngày trước

Technical Leader

Đăng nhập để xem mức lương

Quận Cầu Giấy, Hà Nội

52 Entertainment

1 ngày trước

Project Manager (Playable Ads Team)

Đăng nhập để xem mức lương

Quận 1, Hồ Chí Minh

Teaser Software

1 ngày trước

Fresher React Native

Đăng nhập để xem mức lương

Quận Nam Từ Liêm, Hà Nội

52 Entertainment

1 ngày trước

Junior Unity Developer (Playable Ads)

Đăng nhập để xem mức lương

Quận 1, Hồ Chí Minh

DTN E-COMMERCE SOFTWARE COMPANY LIMITED

4 ngày trước

Java Developer

Đăng nhập để xem mức lương

Quận Nam Từ Liêm, Hà Nội

Globaltech

4 ngày trước

AI Engineer – NLP

Đăng nhập để xem mức lương

Quận Phú Nhuận, Hồ Chí Minh

BKPlus Software

4 ngày trước

Intern Android

Đăng nhập để xem mức lương

Quận Thanh Xuân, Hà Nội

CÔNG TY CỔ PHẦN PHÁT TRIỂN THIẾT BỊ PHÁT THANH TRUYỀN HÌNH VÀ QUẢNG CÁO TRƯỜNG GIANG

4 ngày trước

Nhân Viên Kỹ Thuật

Đăng nhập để xem mức lương

Quận 1, Hồ Chí Minh

Công ty TNHH Phần Mềm BIWOCO

4 ngày trước

Backend Developer

Đăng nhập để xem mức lương

Quận Cái Răng, Cần Thơ - Hồ Chí Minh

CommandOSS

17 giờ trước

Software Engineer (Sui/ReactJS/ReactNative/Typescript)

Đăng nhập để xem mức lương

Quận 4, Hồ Chí Minh

Công ty cổ phần công nghệ Sapo

4 ngày trước

Fullstack Developer (Java/ReactJS)

Đăng nhập để xem mức lương

Quận Ba Đình, Hà Nội

CÔNG TY CỔ PHẦN PHẦN MỀM MOR

4 ngày trước

Tester

Đăng nhập để xem mức lương

Quận Tân Bình, Hồ Chí Minh