Câu hỏi phỏng vấn DevOps bạn cần biết

devops-interview-questions

Trong con mắt mọi người, “DevOps engineer” được coi là một nghề nghiệp tương lai của sự thành công (mặc dù đó không phải là một nghề thực sự). Vậy DevOps là gì? Các công ty quốc tế ở cấp cao nhất (xin kể một vài tên như - Netflix, Facebook, Amazon) đang nhanh chóng triển khai hệ thống DevOps vào quy trình làm việc của mình. Đương nhiên, nhu cầu cần có các chuyên gia DevOps cũng tăng lên. Đó là lý do tại sao trong hướng dẫn này, tôi muốn bàn bạc về các câu hỏi phỏng vấn DevOps.

Tôi biết có thể bạn đã tham gia một số khóa học DevOps trước đó, nhưng hãy để tôi giới thiệu một số câu hỏi phỏng vấn chung và AWS DevOps, sau đó là các câu hỏi nâng cao hơn và một số điều bạn có thể làm trước mỗi buổi phỏng vấn.

Nội dung

Cơ bản về DevOps

Chúng tôi sẽ bắt đầu với những câu hỏi cơ bản ngắn thường thấy khi bắt đầu cuộc phỏng vấn xin việc.

Tuy nhiên, các câu hỏi phỏng vấn DevOps cơ bản không có nghĩa là chúng dễ, đơn giản bạn chỉ cần trả lời mà ít khi phải giải thích thêm.

Câu hỏi 1: “DevOps” là gì?

Rõ ràng, “DevOps là gì” là câu hỏi đầu tiên mà bạn dễ bắt gặp nhất. Nhà tuyển dụng có lẽ chỉ muốn kiểm tra cách bạn giải thích khái niệm bằng ngôn ngữ của mình mà thôi.

Nói một cách đơn giản, DevOps là một phương pháp triết học rút ngắn vòng đời phát triển hệ thống. Bản thân từ này là sự kết hợp giữa “development” và “operations”.

Cách mà DevOps nhắm đến để đạt được điều này là thực hiện tự động hóa giám sát sự kiện (và thử nghiệm!) thông qua toàn bộ quá trình xây dựng phần mềm.

Câu hỏi 2: Các dạng công cụ DevOps phổ biến nhất là gì?

Git, Jenkins, DockerSelenium là một số công cụ phổ biến hơn được sử dụng trong DevOps.

Câu hỏi 3: Sự khác biệt chính so với Agility?

DevOps và Agility thường được đặt cùng nhau và chống lại nhau. Một trong những câu hỏi phỏng vấn DevOps có thể sẽ là so sánh và đối chiếu hai loại này.

Một trong những khác biệt chính giữa hai loại đó là trong khi Agility hoàn toàn hướng đến thời gian, DevOps đặt trọng tâm tương tự về cả thời gian và chất lượng. Bằng cách này, chất lượng cao được đảm bảo cùng với mọi thứ được giao đúng hạn.

Một điểm khác biệt lớn nữa là khi có phản hồi, Agility dựa vào khách hàng, trong khi DevOps chỉ sử dụng tính năng tự giám sát. Cả hai phương pháp đều có lý lẽ hợp lý để chứng mình, nhưng tự giám sát vẫn được coi là lựa chọn tốt hơn bởi vì nó khách quan hơn khi xem xét các vấn đề tiềm năng. Hơn nữa, nếu tự giám sát, thời gian phản ứng nhanh hơn so với phản hồi từ khách hàng.

Câu hỏi 4: Version control là gì?

Đây được coi là một trong những câu hỏi phỏng vấn DevOps dễ nhất - đó là cách để theo dõi tất cả các phiên bản trước của các tệp cụ thể.

Câu hỏi 5: 4 thành phần chính của DevOps là gì?

Tích hợp, thử nghiệm, trung chuyển và giám sát. Tất cả các phương thức này đều có thẻ continuous gắn liền với chúng - chúng không chỉ đơn giản xảy ra một hoặc hai lần, thay vào đó, chúng đều là các quy trình đang diễn ra.

Câu hỏi 6: Ngôn ngữ lập trình nào được sử dụng trong DevOps?

Chủ yếu là Ruby, ngoài ra, Python cũng có thể được sử dụng.

Câu hỏi 7: AWS phù hợp với DevOps như thế nào?

Đây là một trong những câu hỏi phỏng vấn AWS DevOps bạn sẽ gặp vì AWS khá quan trọng khi nói đến DevOps.

AWS là từ viết tắt của Amazon Web Services. Nó đảm bảo khả năng mở rộng kinh doanh bằng cách sử dụng nguồn lực và sức mạnh to lớn (không giới hạn).

AWS được sử dụng trong nhiều công ty để tăng năng lượng cho sản phẩm và phân phối sản phẩm - DevOps đơn giản là phương thức mà nó được sử dụng.

Câu hỏi 8: ‘Extreme Programming’ là gì?

Exreme Programming (thường được gọi đơn giản là XP) là một phương pháp phát triển phần mềm. Mục tiêu chính của XP là sự hài lòng của khách hàng - tất cả các mục tiêu, nghị quyết và phương pháp làm việc đều hướng tới mục tiêu này.

Rất nhiều công ty sử dụng DevOps cũng thường sử dụng XP.

Câu hỏi 9: ‘design pattern’ là gì?

Đây là một trong nhiều thuật ngữ phổ biến mà những người làm việc với mô hình DevOps phải làm quen. Do đó, bạn có khả năng cao gặp nhưng câu hỏi phỏng vấn DevOps engineer kiểu như thế này.

Nói một cách đơn giản, một “design pattern” là một giải pháp cho một số vấn đề mà nhà phát triển gặp phải.

Các patterns này giúp các nhà phát triển mới tránh các vấn đề và sự cố có thể xảy ra bằng cách, ...hiển thị các mẫu và giải pháp có thể.

Có ba loại design pattern chính mà các nhà phát triển thường tham khảo - hành vi, sáng tạo và cấu trúc.

Câu hỏi 10: CBD’s là gì?

CBD, hay Component-Based Development (Phát triển dựa trên thành phần), là một cách duy nhất để tiếp cận phát triển sản phẩm.

Với CBD, các nhà phát triển tìm kiếm các thành phần đã có, được chế tạo tốt và được thử nghiệm để tạo thành một sản phẩm hoàn toàn mới và nguyên bản. Điều này được thực hiện thay vì quy trình thông thường, đó là chế tạo một sản phẩm từ đầu.

devops-interview-questions

Các câu hỏi phỏng vấn DevOps chuyên sâu hơn

Bây giờ bạn đã tưởng tượng ra các câu hỏi liên quan đến DevOps dành cho DevOps engineer sẽ như thế nào. Chúng ta hãy cùng tìm hiểu sâu hơn các câu hỏi phỏng vấn nâng cáo. Phần nâng cao hơn ở đây là các câu hỏi thường đòi hỏi câu trả lời sâu sắc hoặc có dẫn đến các câu hỏi tiếp theo.

Câu hỏi 1: Giải thích "branching"

Một trong những câu hỏi phỏng vấn DevOps phổ biến liên quan đến lời giải thích mà bạn thể hiện được cả kiến thức và kinh nghiệm từ công việc trước đây.

Có ba loại phân nhánh chính (branching) - phân nhánh nhiệm vụ, tính năng và phát hành.

Task branching hay phân nhánh nhiệm vụ bao gồm mỗi nhiệm vụ trong các nhánh khác nhau, với các phím tác vụ được bao gồm trong tên nhánh. Feature branching hay phân nhánh tính năng lưu trữ các thay đổi và sửa đổi của một tính năng trong một chi nhánh. Khi công việc với tính năng được đưa ra và thực hiện, nhánh chứa tính năng này sau đó được kết hợp (hợp nhất) với tệp chủ. Cuối cùng, release branching hay phân nhánh phát hành cho phép bạn nhân bản một nhánh để khi nó phát hành, bạn vẫn có thể thay đổi bản sao.

Câu hỏi 2: Làm thế nào để sao chép Jenkins sang máy chủ khác?

Các nhà tuyển dụng có thể hỏi các câu hỏi phỏng vấn DevOps xoay quanh cùng một chủ đề và mong đợi nhiều câu trả lời khác nhau. Tuy nhiên, tôi sẽ nói với bạn về một trong những phương pháp dễ nhất để sao chép công việc Jenkins từ máy chủ này sang máy chủ khác.

Có lẽ cách đơn giản nhất để thực hiện là sao chép thư mục công việc và chỉ cần đổi tên nó. Sau đó, chỉ cần chuyển công việc mới sang máy chủ khác.

Câu hỏi 3: Kể tên ba phương pháp bạn sử dụng để bảo vệ Jenkins?

Tôi có thể cung cấp cho bạn một số gợi ý về những cách có thể bạn có thể trả lời câu hỏi này:

  • Chạy kiểm toán an ninh định kỳ.
  • Định cấu hình giới hạn quyền truy cập vào dữ liệu được lưu trữ tại Jenkins.
  • Hãy chắc chắn rằng tùy chọn bảo mật toàn cầu được bật.

Câu hỏi 4: Mô tả kiểm tra tự động hóa ‘automation testing’.

Mặc định là các hệ thống thủ công được sử dụng để kiểm tra các hệ thống. Điều này dẫn đến việc nguồn nhân lực được yêu cầu và khả năng xảy ra lỗi sẽ cao hơn. Tuy nhiên, kiểm tra tự động hóa cho phép thực hiện các quy trình tự động kiểm tra các hệ thống cho bạn.

Câu hỏi 5: Lợi ích chính khi sử dụng “kiểm tra tự động hóa” là gì?

Có khá nhiều lợi ích khi sử dụng kiểm tra tự động hóa tại nơi làm việc, tôi liệt kê ra đây một số lợi ích đáng chú ý nhất.

  • Như đã đề cập, lỗi ít có khả năng xảy ra.
  • Tiết kiệm cả tiền bạc và thời gian.
  • Cho phép thực hiện các bài kiểm tra lớn mà thường các bài kiểm tra này sẽ mất quá nhiều thời gian

Question 6: What’s Memcached?

Memcachedmột hệ thống lưu trữ bản sao các đối tượng (object) bộ nhớ nguồn mở. Memcached chủ yếu được sử dụng để tránh các tác vụ tìm nạp dữ liệu SQL lặp đi lặp lại sẽ mất nhiều thời gian thực hiện đồng thời.

Câu hỏi 7: Nếu một vài dữ liệu thay đổi, làm thế nào để cập nhật Memcached?

Đây là một trong hàng trăm câu hỏi phỏng vấn DevOps engineer. Các chủ đề cụ thể như Memcached thường có các câu hỏi tiếp nối tiếp, vì vậy, bạn cần chuẩn bị các câu hỏi liên quan càng nhiều càng tốt.

Có hai cách để cập nhật Memcache theo kịch bản như vậy - xóa bộ nhớ cache sau mỗi lần cập nhật hoặc đặt lại khóa sau khi cập nhật xảy ra.

Câu hỏi 8: Tại sao thành phần của Continuous testing lại quan trọng đối với DevOps?

Tôi đã đề cập 4 thành phần chính của DevOps trước đó, và chúng ta cần đào sâu hơn về từng thành phần, 4 trụ cột mà DevOps dựa lên. Và còn cách nào tốt hơn là xem lại các câu trả lời co những câu phỏng vấn ngẫu nhiên về DevOps như kiểu này phải không?

Continuous testing (Kiểm tra liên tục) cho phép các nhà phát triển thực hiện kiểm tra liên tục sau mỗi lần cập nhật mới được triển khai vào hệ thống. Bằng cách đó, quá trình sẽ trở nên suôn sẻ hơn - nếu không thì, tất cả các bài kiểm tra sẽ được dành riêng vào cuối giai đoạn nước rút, có thể dẫn đến sự cố lớn và do đó lãng phí rất nhiều thời gian.

Câu hỏi 9: Liệu Selenium có phải là một công cụ thử nghiệm tốt?

Có, Selenium được coi là một trong những công cụ kiểm tra tốt hơn cho các hoạt động dựa trên DevOps. Selenium là mã nguồn mở, có thể được sử dụng trên các trình duyệt khác nhau, có cộng đồng tuyệt vời, hỗ trợ tùy chọn thử nghiệm phân tán và cuối cùng nhưng không kém phần quan trọng là hoàn toàn miễn phí.

Udacity Review Logo
Ưu điểm
  • Thiết kế đơn giản (không có thông tin không cần thiết)
  • Khóa học chất lượng cao (ngay cả khóa miễn phí)
  • Đa dạng tính năng
Tính năng chính
  • Chương trình nanodegree
  • Phù hợp với doanh nghiệp
  • Chứng chỉ hoàn thành trả phí
Udemy Logo
Ưu điểm
  • Đa dạng nhiều khóa học
  • Dễ điều hướng
  • Không có vấn đề kỹ thuật
Tính năng chính
  • Đa dạng nhiều khóa học
  • Chính sách hoàn tiền trong 30 ngày
  • Chứng chỉ hoàn thành miễn phí
Udacity Review Logo
Ưu điểm
  • Dễ sử dụng
  • Cung cấp nội dung chất lượng
  • Minh bạch giá cả
Tính năng chính
  • Chứng chỉ miễn phí sau hoàn thành
  • Tập trung vào các kỹ năng khoa học dữ liệu
  • Thời gian học tập linh hoạt

Câu hỏi 10: Làm thế nào bạn có thể tối đa hóa hiệu quả của Continuous Integration?

Như bạn thấy thấy, đây là một định dạng phổ biến cho các câu hỏi phỏng vấn DevOps - việc thực hiện các quy trình liên tục thường là một điểm rất quan trọng đối với nhà tuyển dụng.

Có rất nhiều điều bạn có thể làm để tối đa hóa hiệu quả khi tích hợp liên tục (continuous integration). Dưới đây là một vài trong số những hiệu quả nổi bật hơn cả:

  • Tự động hóa cả việc xây dựng và triển khai.
  • Thử nghiệm phải được thực hiện trong một môi trường được sao chép chính xác (nhân bản) trong đó các quy trình sản xuất sẽ diễn ra.
  • Cho phép mọi người xem kết quả của một bản dựng - điều này sẽ nâng cao năng suất và làm trơn tru các quá trình giao tiếp.

Một vài bí kíp phỏng vấn chung

Chúng ta đã đi qua một số câu hỏi câu hỏi và câu trả lời phỏng vấn DevOps phổ biến nhất từ “DevOps là gì”, hãy trò chuyện thêm về một số điều chung nhất cần ghi nhớ khi đi phỏng vấn xin việc.

Có lẽ bí kíp quan trọng nhất mà tôi đưa ra là đừng quá cả nghĩ về nó. Chúng ta đã gần tới đích - lịch phỏng vấn đã được đặt ra và bạn bắt đầu cảm thấy lo lắng? Điều gì sẽ xảy ra nếu nhà tuyển dụng không thích bạn hay thắt nơ của bạn? Bạn có nên đeo nơ không? Thắt nơ là gì?

Hãy cố gắng thư giãn. Nhà tuyển dụng hoàn toàn có thể cảm nhận rằng bạn đang bình tĩnh hay lo lắng và điều này có thể ảnh hưởng nghiêm trọng đến kết quả của cuộc phỏng vấn.

devops-interview-questions

Vì vậy, đừng quên rũ bỏ hết căng thẳng và áp lực trước mỗi cuộc phỏng vấn. - hãy thử các bài tập hít thở sâu, tránh màn hình và suy nghĩ về những giấc ngủ ngon bằng cách trải giường trước khi đi ngủ. Nghe có vẻ lạ nhưng ngay cả một điều đơn giản như nệm chất lượng tốt cũng có thể ảnh hưởng ít nhiều đến kết quả phỏng vấn đấy.

Ngoài ra, cũng không nên tìm hiểu ngày đêm với DevOps nếu như bạn không muốn xuất hiện trước nhà tuyển dụng như thây ma. Tham gia các khóa học DevOps là quan trọng nhưng ngủ đủ và nghỉ ngơi cũng cần thiết không kém.

Những gì bạn có thể làm là cố gắng một tuần trước cuộc phỏng vấn, và ngày cuối cùng trước ngày phỏng vấn thì không nên làm gì cả.

Đây là một phương pháp học tập phổ biến nói chung. Bằng cách làm như vậy, bạn cho phép bộ não của mình được nghỉ ngơi và phục hồi - thầm dần các kiến thức từ các khóa học DevOps trước đó.

Trong cuộc phỏng vấn thực tế, hãy chứng tỏ bản thân mình. Không cần tỏ ra khác lạ. Hãy là chính bạn. Nhà tuyển dụng sẽ trân trọng điều đó.

Kết luận

Triết lý DevOps đang gây bão trên toàn thế giới - với rất nhiều công ty nổi tiếng đã áp dụng. Sự gia tăng mức độ phổ biến của phương pháp này là không thể phủ nhận.

Bạn có thể thấy các thuật ngữ “DevOps coding” hay “DevOps engineer interview questions” ở mọi nơi trên Internet và tôi cũng sử dụng nó trong hướng dẫn DevOps này. Thành thật mà nói, các từ này chưa chính xác vì không có cái nào gọi là “DevOps coder” hay “DevOps engineer” ở đây. DevOps không phải tên một nghề hay chức danh. Tuy nhiên, mọi người đã quá quen với việc sử dụng thuật ngữ này, đến nỗi việc ám chỉ nó trở nên dễ dàng hơn nhiều so với việc giải thích lại vấn đề.

Trong hướng dẫn này, chúng tôi đã nói về một số câu hỏi phỏng vấn DevOps chung và các câu hỏi phỏng vấn Memcache, Jenkins, Selenium và AWS DevOps cũng như đưa ra một số lời khuyên mà bạn có thể áp dụng trước và trong khi phỏng vấn xin việc. Chúc bạn may mắn với các cuộc phỏng vấn trong tương lai!

Để lại phản hồi chân thật của bạn

Hãy để lại ý kiến xác thực của bạn & giúp hàng nghìn người chọn được nền tảng học online tốt nhất. Tất cả phản hồi, dù tích cực hay tiêu cực, đều được chấp nhận miễn là chúng trung thực. Chúng tôi không công khai phản hồi thiên vị hoặc thư rác. Vì vậy, nếu bạn muốn chia sẻ kinh nghiệm, ý kiến hoặc đưa ra lời khuyên - phần này dành cho bạn!

Đánh giá của người dùng gần đây

Khá được

Bài viết khá được, mình thích những bài viết kiểu này trên bitdegree, khiến những vấn đề khó sẽ trở nên dễ dàng với mn.

Tốt

Tốt, nội dung đảm bảo cung cấp nhiều thông tin hữu ích cho sinh viên và người học nói chung.

OK

Cũng OK, tuy nhiên không thể chỉ đọc hướng dẫn này mà hiểu hết về devops được.

OK

Khá là OK, hay.

Rất OK

Bài viết rất OK, có nhiều thông tin về devops cho những ai quan tâm nhé.

Hài lòng

Rất thích devops, và muốn học thêm về nó.

OK

Cũng OK, có một số khái niệm chuyên ngành, mình nghĩ cần có những hướng dẫn bổ sung để mn hiểu thêm.

Rất tốt

Rất tốt, nội dung ko quá dài nhưng đủ ý, súc tích, giúp mn hiểu thêm về devops theo cách này hay cách khác.

Tốt

Hướng dẫn được, tốt, cách viết và cách trả lời khá hay và cung cấp nhiều kiến thức hay.

OK

Khá là OK, mình cảm thấy tự tin rất nhiều trước khi phỏng vấn nhờ có các câu hỏi phỏng vấn được chuẩn bị trước này.

Khá tốt

Ngắn gọn, đủ ý, dễ theo dõi, và nội dung đảm bảo.

Được

Cũng được, không có gì phàn nàn về mặt nội dung nhưng đây chưa phải là tất cả về devops.

OK

Cũng OK, nhưng có nhiều từ chuyên ngành mà người mới bắt đầu khó có thể hiểu ngay được.

Ổn

Khá ổn cho những ai đang chuẩn bị phỏng vấn về lĩnh vực này nhé, đảm bảo có thể trúng tủ luôn :D

Khá hay

Bài viết khá hay, với các nội dung và cách trình bày dễ theo dõi vì nó dưới dạng các câu hỏi và trả lời.

Tốt

Bài viết tốt, mình cần biết thêm về devops, thì có những khóa học online nào tốt mọi người nhỉ?

Hài lòng

Khá hài lòng với các hướng dẫn, tuy nhiên có nhiều thuật ngữ khá khó cho người mới bắt đầu nếu đã đọc bài viết này.

Khá ổn

Khá ổn, mặc dù đã biết về devops, nhưng thực sự bài viết cho mình hiểu thêm 1 số khía cạnh trước kia mình ko để ý tới.

Tốt

Hướng dẫn khá tốt, cung cấp nhiều kiến thức dưới dạng những câu hỏi phỏng vấn cơ bản lẫn nâng cao.

Được

Khá được, mình thu nhận được nhiều kiến thức từ bài viết này và một số bài viết khác về sql.

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

Cách chọn trang khóa học trực tuyến nào để đánh giá như thế nào?

Chúng tôi chọn các nền tảng học online theo quy mô thị trường, mức độ phổ biến của chúng và quan trọng nhất là yêu cầu hoặc sở thích chung của người dùng để đọc các bài đánh giá MOOC chân thật về một số nền tảng học online nhất định.

Bạn cần nghiên cứu nhiều như thế nào trước khi viết đánh giá e-learning?

Các chuyên gia MOOC tận tâm của chúng tôi thực hiện nghiên cứu trong nhiều tuần - chỉ sau đó mới có thể nói rằng các đánh giá của họ về các khía cạnh khác nhau là cuối cùng và hoàn chỉnh. Mặc dù mất rất nhiều thời gian, nhưng đây là cách duy nhất chúng tôi có thể đảm bảo rằng tất cả các tính năng thiết yếu của nền tảng học online đều được thử nghiệm và kiểm tra và phán quyết dựa trên dữ liệu thực.

Khía cạnh nào là quan trọng nhất khi chọn nền tảng học online tốt nhất?

Sẽ không đúng nếu chỉ chọn một khía cạnh trong số lựa chọn: các ưu tiên phụ thuộc vào từng cá nhân, giá trị, mong muốn và mục tiêu của họ. Một tính năng quan trọng đối với một người có thể hoàn toàn không liên quan đến người kia. Nhưng dù sao, tất cả người dùng sẽ đồng ý rằng chất lượng tốt của tài liệu học tập là điều bắt buộc đối với các nền tảng học online.

Nền tảng đánh giá e-learning này khác với những cái khác như thế nào?

Mỗi nền tảng đánh giá MOOC là duy nhất và có các mục tiêu và giá trị riêng. Các bài đánh giá e-learning của chúng tôi là chân thực 100% và được viết sau khi thực hiện phân tích cẩn thận. Đó là mục tiêu mà rất nhiều trang đánh giá e-learning còn thiếu, vì vậy chúng tôi coi đó là siêu năng lực của mình!

Ngày
Giờ
Phút
Giây