Thử Thách Top Coder của 8090
Bài đăng LinkedIn gốc
Kho GitHub của Dự án
Vào tối thứ Sáu, tôi thấy một bài đăng công khai trên Twitter/X của Chamath Palihapitiya thông báo về một Thử Thách Top Coder mở do công ty mới của anh ấy, 8090 Solutions, tổ chức. Bất kỳ ai cũng có thể tham gia. Thử thách sẽ diễn ra vào ngay ngày hôm sau, chỉ kéo dài 8 giờ, và liên quan đến việc phân tích ngược một hệ thống kế thừa dạng hộp đen chỉ sử dụng dữ liệu lịch sử và một vài cuộc phỏng vấn với nhân viên.
Tôi quyết định tham gia!
Đến cuối ngày, tôi vinh dự xếp thứ 7 trong tổng số 425 kỹ sư. Bạn có thể xem bảng xếp hạng TẠI ĐÂY và xem mã cho thử thách này TẠI ĐÂY. Nhưng, tôi sẽ không nói dối, thực sự tôi chỉ hy vọng hoàn thành được điều gì đó trong khoảng thời gian ngắn ấy, nên việc lọt vào bảng xếp hạng là một bất ngờ và là một chiến thắng cá nhân lớn đối với tôi.
Thử thách diễn ra đơn lẻ, và mục tiêu là tái tạo một hệ thống hoàn trả chi phí đi lại dạng hộp đen đã tồn tại 60 năm mà không có mã nguồn và không có tài liệu. Chúng tôi được cung cấp một vài hiện vật bao gồm một tóm tắt sản phẩm, bản ghi các cuộc phỏng vấn nhân viên, và một bộ dữ liệu công khai chứa 1.000 ví dụ lịch sử về đầu vào và đầu ra dự kiến. Từ đó, tôi phải suy luận logic nghiệp vụ đứng sau cách các khoản hoàn trả được tính toán và triển khai một phiên bản hiện đại có thể tạo ra các kết quả càng giống với hệ thống gốc càng tốt. Các bài nộp được đánh giá trên một bộ dữ liệu ẩn riêng biệt chứa 5.000 trường hợp thử nghiệm thay vì 1.000 ban đầu. Bộ dữ liệu riêng lớn hơn này là thứ cuối cùng quyết định điểm số và thứ hạng cuối cùng của bạn. Hệ thống chấm điểm thưởng cho độ chính xác, trong đó điểm thấp hơn có nghĩa là giải pháp của bạn càng khớp với hành vi ẩn của hệ thống gốc.
Để giải quyết sự không chắc chắn và các mẫu trong dữ liệu, tôi đã sử dụng các kỹ thuật học máy cổ điển cùng với các quy tắc suy luận cơ bản và logic lập trình. Đó là sự kết hợp thận trọng giữa phân tích dữ liệu, mô hình hóa đặc trưng, và xấp xỉ quy tắc dựa trên những manh mối không hoàn hảo.
Đây là điểm eval của tôi cho bộ dữ liệu công khai 1.000 trường hợp:
✅ Evaluation Summary
------------------------
Total cases : 1000
Exact matches (<$0.01): 0
Close matches (<$1.00): 17
Average error : $31.15
Score : 3214.93
Việc phát triển một giải pháp cho thử thách như vậy trong 8 giờ hầu như không thể thực hiện được nếu không có sự trợ giúp của các công cụ hỗ trợ AI giúp dễ dàng khám phá, tích hợp và kiểm thử ý tưởng một cách nhanh chóng.
Cảm giác như khảo cổ phần mềm kết hợp với một cuộc chạy nước rút mã hóa trực tiếp. Chắc chắn là một trong những thử thách kỹ thuật căng thẳng và đáng giá nhất mà tôi từng làm.
Cảm ơn Chamath Palihapitiya và Arjun Krishna đã tổ chức một thử thách sáng tạo và truyền cảm hứng như vậy.
Liên kết: