FDE PulseViệc làm FDE đang mở 632Mới trong 7 ngày 57Công ty đang tuyển 95Nhận làm từ xa 24%Lương trung vị (Mỹ) $205kTuyển nhiều nhất Databricks 114
EN

Tờ báo của nghề Forward Deployed Engineer

Bách khoa

Tin tuyển FDE của Turing: mỗi dòng cần một bằng chứng

Dòng "5–8+ năm" làm nhiều người đóng tab sớm, trong khi đoạn mô tả bên dưới mới cho biết nhà tuyển dụng thật sự muốn thấy gì ở bạn.

Ảnh người đang đọc tin tuyển dụng trên laptop hoặc buổi phỏng vấn trong văn phòng công nghệ
Ảnh: Vitaly Gariev / Unsplash
Chia sẻLinkedInFacebookX

Tóm tắt nhanh

  • Turing xếp FDE vào nhóm Enterprise AI Engineering, tuyển ở New York, Bengaluru và Hyderabad, có cả bản In Training dành cho người mới vào nghề.
  • Phần yêu cầu đòi Python, LangChain, LangGraph, SQL, hiểu sâu API, microservices, event-driven và từng đưa GenAI lên production; AWS, Azure, GCP nằm ở phần trách nhiệm công việc.
  • Bạn nên chuẩn bị bằng chứng cho từng dòng yêu cầu thay vì học thêm công cụ: mỗi dòng cần một câu chuyện có bối cảnh, quyết định và kết quả.
Sơ đồ vòng tròn bốn chặng trong tin tuyển FDE của Turing: Discovery (hiểu nhu cầu khách hàng), Xây (Python, LangGraph), Vận hành (AWS, Azure, GCP) và Góp vào roadmap. Chặng cuối được tô màu cam, là chặng hay bị bỏ qua nhất, nối ngược về Discovery.
Đọc phần trách nhiệm theo thứ tự công việc thì tin tuyển là một vòng deployment khép kín. Chặng góp vào roadmap khép lại vòng đó, nhưng lại hay bị bỏ qua nhất. Nguồn: tin tuyển Forward Deployed AI Engineer của Turing trên Greenhouse.

Bạn mở tin tuyển Forward Deployed AI Engineer của Turing, đọc tới dòng đòi 5–8+ năm kinh nghiệm và định đóng tab. Đừng vội. Tin tuyển FDE không phải danh sách để tích đủ ô. Nó tả chân dung một người từng đưa hệ thống GenAI đến tay khách hàng thật, và người tuyển cần bạn cho thấy mình là người đó.

Turing là ví dụ dễ học vì tin của họ viết khá rõ. Trên trang Greenhouse, các vị trí forward-deployed nằm trong nhóm “Enterprise AI Engineering”. Cùng nhóm này còn có Engagement Manager, một AI Engagement Lead và một Head of Engineering, dấu hiệu cho thấy FDE làm việc sát với những người lo quan hệ với khách hàng.

Vị trí được tuyển ở New York, Bengaluru và Hyderabad. Turing còn có bản “In Training” dành cho người mới vào nghề ở New York, và tuyển thêm Field Engineer, AI Labs, một vị trí thuộc nhóm Field Engineering riêng.

Bản Principal là tin cũ, đã ngừng nhận hồ sơ và được cho là đòi từ 10 năm kinh nghiệm, nên bạn hãy xem bảng tuyển đang mở trước khi chọn bậc.

Đọc kỹ thì đây là một vòng deployment

Đọc phần trách nhiệm theo thứ tự công việc thay vì theo thứ tự công nghệ. Câu đầu tiên đòi bạn dẫn dắt deployment ứng dụng GenAI cho khách hàng từ đầu đến cuối, bắt đầu từ discovery và kết thúc ở khâu bàn giao. Mọi dòng phía sau đều là các chặng của vòng đó.

Ở chặng hiểu vấn đề, bạn là cố vấn kỹ thuật mà khách hàng tin cậy, phải nắm nhu cầu của họ rồi thiết kế giải pháp AI riêng cho họ. Ở chặng xây, bạn thiết kế và viết hệ thống bằng Python, LangChain/LangGraph và các framework LLM. Ở chặng vận hành, bạn làm trên AWS, Azure và GCP sao cho hạ tầng an toàn và đủ nhanh.

Chặng cuối hay bị bỏ qua nhất: làm việc với đội product, ML và engineering để góp tiếng nói vào roadmap và những tính năng cốt lõi của nền tảng. Turing muốn mỗi lần deployment để lại thứ dùng lại được. Thêm vào đó là yêu cầu tự chủ, giải thích được chuyện phức tạp cho khách hàng và chạy song song nhiều deployment một lúc.

Mỗi dòng yêu cầu cần một câu chuyện

Phần yêu cầu có một chữ quan trọng hơn tất cả công cụ: production. Turing muốn thấy bạn đã thiết kế và đưa ứng dụng GenAI vào môi trường production thành công, chứ không chỉ làm demo. Họ cũng đòi hiểu sâu kiến trúc: API, microservices, hệ thống event-driven, cộng với Python, LangChain, LangGraph và SQL.

Cách chuẩn bị hiệu quả nhất là lập bảng ghép bằng chứng. Mỗi hàng ứng với một yêu cầu, kèm điều người phỏng vấn thật sự muốn biết và loại bằng chứng trả lời được điều đó.

Yêu cầu trong tin Người phỏng vấn muốn biết Bằng chứng nên có
Từ discovery đến bàn giao Bạn có tự lo được cả vòng? Một dự án bạn bắt đầu từ buổi hỏi nhu cầu và kết thúc bằng tài liệu bàn giao
GenAI trên production Hệ thống đã chạy với người dùng thật chưa? Bạn đã giám sát gì, lỗi nào xảy ra, bạn sửa ra sao
API, microservices, event-driven Bạn có ghép được LLM vào hệ thống sẵn có? Một luồng mà sự kiện kích hoạt agent, không phải ai đó bấm nút
SQL Bạn có làm được với dữ liệu thật của khách? Truy vấn trên schema lộn xộn, có xử lý quyền truy cập
Cố vấn kỹ thuật Bạn có dám nói “không” đúng lúc? Một lần bạn đổi phạm vi dự án vì lý do kỹ thuật
Nhiều deployment song song Bạn có tự xoay xở mà không cần ai giao việc? Cách bạn chia thời gian và báo tiến độ cho từng bên

Hàng nào bạn không điền được, đó là chỗ cần lấp. Thường số hàng trống ít hơn bạn sợ, chỉ là trước giờ bạn chưa kể các câu chuyện đó theo đúng ngôn ngữ của nghề này.

Thử áp vào một kỹ sư backend bốn năm kinh nghiệm

Thử hình dung một kỹ sư backend có bốn năm kinh nghiệm, đã viết API và microservices, dùng SQL hằng ngày nhưng chưa từng đưa LLM lên production và hiếm khi nói chuyện trực tiếp với khách hàng. Đối chiếu với bảng trên, ba hàng kiến trúc gần như đầy, còn hàng production GenAI, hàng discovery và số năm kinh nghiệm thì còn trống.

Lời khuyên cho người này có hai nhánh. Nếu đang nhắm đúng Turing, bản In Training là cửa vào hợp lý hơn bản tiêu chuẩn. Dù chọn cửa nào, người này cũng nên xây một dự án lấp đúng hàng production, thay vì học thêm một framework nữa.

Dự án nên nhỏ nhưng đi hết vòng: một agent LangGraph trả lời câu hỏi nghiệp vụ trên cơ sở dữ liệu SQL. Agent được kích hoạt khi có sự kiện, ví dụ một ticket mới, và được deploy lên một cloud. Khung tối thiểu trông như sau:

from typing import TypedDict
from langgraph.graph import StateGraph, END

class State(TypedDict):
    question: str
    sql: str
    rows: list
    answer: str

def generate_sql(state: State) -> dict:
    # Gọi LLM với schema đã lọc theo quyền của người hỏi
    return {"sql": "..."}

def run_sql(state: State) -> dict:
    # Chỉ cho phép SELECT, đặt timeout, ghi log truy vấn
    return {"rows": []}

def answer(state: State) -> dict:
    # Trả lời kèm truy vấn đã chạy để người dùng tự kiểm tra
    return {"answer": "..."}

graph = StateGraph(State)
graph.add_node("generate_sql", generate_sql)
graph.add_node("run_sql", run_sql)
graph.add_node("answer", answer)
graph.set_entry_point("generate_sql")
graph.add_edge("generate_sql", "run_sql")
graph.add_edge("run_sql", "answer")
graph.add_edge("answer", END)
app = graph.compile()

Đoạn code không phải phần khó. Thứ người phỏng vấn muốn nghe nằm trong các dòng chú thích: vì sao chỉ cho phép SELECT, vì sao trả lời kèm câu truy vấn, khi agent sinh SQL sai thì ai được báo. Đó là các quyết định một FDE phải tự đưa ra khi ngồi ở chỗ khách hàng.

Sau dự án, gạch đầu dòng trong CV cũng phải đổi. Câu “Xây chatbot bằng LangChain” chỉ cho biết bạn dùng công cụ gì. Câu tốt hơn sẽ tả bối cảnh, quyết định và trạng thái vận hành: dựng agent LangGraph hỏi đáp trên SQL, kích hoạt bằng sự kiện ticket, chạy trên một cloud, giới hạn quyền đọc, có log và tài liệu bàn giao.

Tự làm theo bốn bước

Bước đầu là chép tin tuyển ra và tách mỗi câu thành một yêu cầu, bỏ qua tính từ, giữ lại động từ. Bước hai là ghép mỗi yêu cầu với một câu chuyện có thật của bạn, theo đúng ba cột trong bảng.

Bước ba là chọn đúng một hàng trống quan trọng nhất và lấp nó bằng một dự án đi hết vòng, từ một buổi discovery giả lập với một người bạn đóng vai khách hàng cho đến README bàn giao.

Bước bốn là luyện kể chuyện: mỗi câu chuyện gói trong hai phút, nói được cho cả người không làm kỹ thuật hiểu, vì tin tuyển đòi đúng khả năng đó.

Những lỗi khiến hồ sơ trượt

Lỗi phổ biến nhất là liệt kê công cụ. Ghi Python, LangChain, LangGraph, SQL, AWS, Azure, GCP thành một dòng không chứng minh được gì, vì người khác cũng ghi y hệt. Công cụ chỉ có giá trị khi gắn với một hệ thống đã chạy.

Lỗi thứ hai là đem demo đi kể như production. Người phỏng vấn sẽ hỏi chuyện gì xảy ra khi dữ liệu bẩn, khi mô hình trả lời sai, khi khách đổi yêu cầu giữa chừng, và một bản demo không có câu trả lời nào cho các câu hỏi đó.

Lỗi thứ ba là quên chặng cuối: không nhắc gì tới việc đã mang bài học từ khách hàng về cho đội product, trong khi Turing ghi rõ họ muốn người góp tiếng nói được vào roadmap.

Lỗi cuối cùng là tự loại mình chỉ vì con số năm kinh nghiệm, trong khi bậc In Training vẫn tồn tại. Ngược lại, đừng nộp vào bản Principal chỉ vì thấy tên quen, tin đó đã đóng.

Lần tới khi đọc một tin tuyển FDE, ở Turing hay ở đâu cũng vậy, đừng hỏi mình còn thiếu công cụ gì. Hãy hỏi trong cả vòng deployment đó, chặng nào bạn chưa từng tự mình đi hết.

Bài này có hữu ích không?

Dùng cùng trợ lý AIHỏi Claude ↗Hỏi ChatGPT ↗
4 nguồn
Đọc tiếp trên lộ trình · Chặng 7: Dẫn dắtĐọc tin tuyển Forward Deployed Engineer của Chalk: từng dòng đòi hỏi gì, và chuẩn bị ra saoTin tuyển dụng này chỉ có vài dòng, nhưng dòng nào cũng biến được thành một dự án nhỏ, một bản memo hay một câu trả lời phỏng vấn, để bạn cho nhà tuyển dụng thấy bằng chứng chứ không chỉ kể.