Kế hoạch 100 ngày xây dựng hồ sơ GitHub và mạng lưới quan hệ công nghệ

Mục tiêu chiến lược

Kế hoạch này loại bỏ toàn bộ bài tập nhập môn và các dự án cá nhân đã thực hiện trước đây. Danh mục dưới đây gồm sáu dự án công nghệ hoàn toàn mới, xây dựng từ đầu nhằm thể hiện năng lực lập trình hệ thống, xử lý mạng phân tán, công cụ phát triển phần mềm và an toàn thông tin. Mỗi dự án đều hướng tới việc phát hành mã nguồn mở hoàn chỉnh kèm tài liệu chuẩn mực, kiểm thử tự động và trang trình diễn thực tế.


Giai đoạn 1 (Ngày 1 đến ngày 25): Công cụ phát triển phần mềm và xử lý dữ liệu

Mục tiêu giai đoạn là xây dựng hai công cụ dòng lệnh chuyên sâu nhằm chứng minh khả năng tối ưu thuật toán, phân tích cú pháp tệp nhị phân và cấu trúc cây trừu tượng.

Dự án 1: SQL-Diff Engine

  • Bản chất dự án: Công cụ dòng lệnh độc lập phân tích sai khác giữa hai lược đồ cơ sở dữ liệu quan hệ, tự động sinh tập lệnh dịch chuyển cấu trúc mà không làm mất dữ liệu.
  • Ngăn xếp công nghệ: TypeScript, Node.js, bộ phân tích cú pháp SQL gốc.
  • Kế hoạch triển khai:
    • Ngày 01-04: Xây dựng bộ phân tích câu lệnh định nghĩa dữ liệu thành cây cú pháp trừu tượng, trích xuất cấu trúc bảng, khóa ngoại, chỉ mục và ràng buộc toàn vẹn.
    • Ngày 05-08: Triển khai thuật toán so sánh đồ thị cây nhằm phát hiện thay đổi kiểu cột, bảng bị xóa hoặc ràng buộc bị nới lỏng.
    • Ngày 09-12: Viết trình sinh mã tự động tạo câu lệnh dịch chuyển theo cả hai chiều thuận và nghịch.
    • Ngày 13-15: Viết 50 ca kiểm thử hồi quy, đóng gói tệp nhị phân độc lập và phát hành bản thử nghiệm đầu tiên.

Dự án 2: Markdown AST Linter

  • Bản chất dự án: Công cụ phân tích tĩnh tài liệu kỹ thuật dựa trên cây cú pháp trừu tượng, kiểm tra cú pháp công thức toán học, tính hợp lệ của liên kết nội bộ và chuẩn hóa bảng biểu.
  • Ngăn xếp công nghệ: TypeScript, Unist, Mdast.
  • Kế hoạch triển khai:
    • Ngày 16-18: Thiết lập bộ nạp và phân tích văn bản Markdown thành các nút cấu trúc trong bộ nhớ.
    • Ngày 19-21: Xây dựng hệ thống luật kiểm tra quy chuẩn, phát hiện liên kết tương đối bị gãy và bảng biểu sai số lượng cột.
    • Ngày 22-23: Xây dựng chế độ tự động sửa lỗi trực tiếp trên tệp nguồn theo cờ tham số dòng lệnh.
    • Ngày 24-25: Xuất bản gói thư viện lên kho lưu trữ công khai và công bố tài liệu tích hợp vào quy trình kiểm thử tự động của GitHub.

Giai đoạn 2 (Ngày 26 đến ngày 50): Mạng máy tính và công cụ kiểm thử phân tán

Mục tiêu giai đoạn là chứng minh sự am hiểu giao thức truyền tải siêu văn bản, luồng dữ liệu song song và kỹ thuật mô phỏng lỗi mạng.

Dự án 3: Mock-Wire Gateway

  • Bản chất dự án: Máy chủ cổng giả lập mạng nội bộ siêu nhẹ, cho phép nhóm phát triển mô phỏng độ trễ mạng ngẫu nhiên, tỉ lệ rớt gói tin và phản hồi dữ liệu động thông qua cấu hình khai báo.
  • Ngăn xếp công nghệ: TypeScript, nhân máy chủ HTTP của Node.js, máy chủ WebSocket.
  • Kế hoạch triển khai:
    • Ngày 26-30: Xây dựng nhân chuyển tiếp yêu cầu mạng với độ trễ tối thiểu, hỗ trợ chặn và thay đổi tiêu đề hoặc thân gói tin theo quy tắc định trước.
    • Ngày 31-35: Thiết lập bộ tạo phản hồi động dựa trên mẫu dữ liệu có điều kiện và hỗ trợ truyền luồng dữ liệu lớn theo khối.
    • Ngày 36-40: Xây dựng giao diện dòng lệnh hiển thị trực quan lưu lượng mạng đi qua cổng theo thời gian thực.
    • Ngày 41-43: Đo đạc và công bố bảng số liệu hiệu năng chịu tải khi xử lý mười nghìn yêu cầu đồng thời.

Dự án 4: Security Headers Crawler

  • Bản chất dự án: Công cụ quét mạng chuyên sâu tự động đánh giá mức độ an toàn của cấu hình tiêu đề máy chủ web, phát hiện lỗ hổng rò rỉ chính sách chia sẻ tài nguyên và xuất mã cấu hình sửa đổi.
  • Ngăn xếp công nghệ: Python 3, Asyncio, HTTPX, Jinja2.
  • Kế hoạch triển khai:
    • Ngày 44-46: Xây dựng trình thu thập bất đồng bộ có khả năng quét hàng loạt tên miền với tốc độ cao mà không gây nghẽn băng thông.
    • Ngày 47-48: Xây dựng bộ luật chấm điểm rủi ro bảo mật theo tiêu chuẩn OWASP cho các tiêu đề chống giả mạo yêu cầu và chèn mã độc.
    • Ngày 49-50: Tích hợp mô-đun tự động sinh khối cấu hình chuẩn cho các máy chủ web phổ biến để quản trị viên áp dụng ngay.

Giai đoạn 3 (Ngày 51 đến ngày 75): Hệ thống phân tán cạnh và hiển thị dữ liệu lớn

Mục tiêu giai đoạn là làm chủ thuật toán phân tán phức tạp trên hạ tầng không máy chủ và xử lý kết xuất đồ họa hiệu năng cao.

Dự án 5: Distributed Rate Limiter SDK

  • Bản chất dự án: Thư viện điều phối lưu lượng phân tán đa thuật toán, thiết kế chạy trực tiếp tại biên mạng và tối ưu cho môi trường không máy chủ có tài nguyên bộ nhớ hạn chế.
  • Ngăn xếp công nghệ: TypeScript, kho lưu trữ khóa giá trị của Cloudflare Workers, WebAssembly, Web Crypto API.
  • Kế hoạch triển khai:
    • Ngày 51-56: Cài đặt bốn thuật toán điều phối lưu lượng gồm thùng chứa thẻ bài, thùng rò rỉ, cửa sổ trượt ghi nhật ký và cửa sổ trượt đếm số lượng.
    • Ngày 57-62: Tối ưu hóa đồng bộ trạng thái giữa các điểm mạng biên nhằm giảm xung đột ghi dữ liệu đồng thời.
    • Ngày 63-66: Xây dựng bộ kiểm thử tải nặng mô phỏng hàng triệu yêu cầu để chứng minh tính ổn định của thuật toán.
    • Ngày 67-70: Hoàn thiện tài liệu tích hợp dạng thư viện trung gian cho các bộ khung ứng dụng web phổ biến.

Dự án 6: Trace Waterfall Visualizer

  • Bản chất dự án: Thư viện hiển thị đồ thị thác nước cho dữ liệu vết phân tán chuẩn công nghiệp, vẽ trực tiếp bằng đồ họa phần cứng mà không dùng khung hiển thị trung gian nặng nề.
  • Ngăn xếp công nghệ: TypeScript, giao diện lập trình thẻ vẽ đồ họa hai chiều của trình duyệt, lược đồ dữ liệu vết phân tán.
  • Kế hoạch triển khai:
    • Ngày 71-73: Xây dựng bộ phân tích dữ liệu vết phân tán thành cấu trúc phân cấp thời gian thực.
    • Ngày 74-75: Lập trình thuật toán dựng đồ họa trên thẻ vẽ hai chiều, hỗ trợ thu phóng mượt trên tập dữ liệu chứa hàng vạn khoảng thời gian thực thi.

Giai đoạn 4 (Ngày 76 đến ngày 100): Mở rộng mạng lưới và chuyển hóa kỹ thuật

Mục tiêu giai đoạn là dùng chính các sản phẩm đã hoàn thiện làm phương tiện kết nối với cộng đồng chuyên gia và kỹ sư cấp cao.

Đóng góp mã nguồn và củng cố hồ sơ

  • Ngày 76-80: Chọn lọc ba kho mã nguồn mở lớn trong lĩnh vực hạ tầng mạng và công cụ lập trình, tìm các vấn đề kỹ thuật đang mở để gửi giải pháp xử lý.
  • Ngày 81-85: Hoàn thiện ít nhất hai đề xuất kéo giải quyết triệt để lỗi kỹ thuật hoặc cải thiện tốc độ xử lý cho thư viện thượng nguồn.
  • Ngày 86-90: Tái cấu trúc trang hồ sơ cá nhân trên GitHub, ghim bốn dự án có chiều sâu kỹ thuật nhất, gắn kèm biểu đồ kiến trúc hệ thống và liên kết đến phiên bản chạy thử nghiệm công khai.

Xuất bản tri thức và kết nối nghề nghiệp

  • Ngày 91-95: Biên soạn ba bài viết chuyên sâu bằng tiếng Anh đăng trên diễn đàn công nghệ quốc tế:
    • Bài 1: Kỹ thuật xây dựng thuật toán phân tích sai khác lược đồ cơ sở dữ liệu quan hệ bằng cây cú pháp trừu tượng.
    • Bài 2: Đánh giá hiệu năng và sai lệch dữ liệu của các thuật toán điều phối lưu lượng trên mạng lưới máy chủ phân tán biên.
    • Bài 3: Phương pháp tối ưu hóa thẻ vẽ hai chiều khi biểu diễn dữ liệu thời gian thực quy mô lớn mà không làm sụt giảm tốc độ khung hình.
  • Ngày 96-98: Công bố sản phẩm và phát hiện kỹ thuật lên các mạng xã hội nghề nghiệp, tham gia trực tiếp vào các bài toán kỹ thuật mà kỹ sư khác đang gặp phải.
  • Ngày 99-100: Xác định danh sách 25 kỹ sư trưởng và nhà sáng lập trong lĩnh vực công nghệ phân tán, gửi tin nhắn thảo luận ngắn gọn đi thẳng vào một vấn đề kiến trúc cụ thể đã được kiểm chứng bằng mã nguồn thực tế.