1. Công việc phát triển phần mềm (Core Responsibilities)
Lập trình viên chịu trách nhiệm:
Phân tích & thiết kế
- Nghiên cứu tài liệu yêu cầu (BRD, SRS, User Story)
- Phân tích nghiệp vụ và đề xuất giải pháp kỹ thuật
- Thiết kế:
- Kiến trúc hệ thống (3-tier, Microservices, Monolithic…)
- Database (SQL Server, MySQL…)
- API structure (RESTful/GraphQL nếu có)
- Viết tài liệu thiết kế kỹ thuật (Technical Design Document)
Lập trình Backend (.NET Core)
- Phát triển hệ thống sử dụng:
- ASP.NET Core Web API
- MVC / Razor Pages / Blazor (nếu có)
- Xây dựng:
- Business Logic Layer
- Data Access Layer (Entity Framework / Dapper)
- Viết API tích hợp:
- Hệ thống bên thứ ba (Payment, SMS, Email, AI API…)
- Hệ thống nội bộ khác
Làm việc với cơ sở dữ liệu
- Thiết kế bảng, quan hệ dữ liệu
- Viết Stored Procedure, Function, Trigger
- Tối ưu truy vấn SQL
- Đảm bảo tính toàn vẹn dữ liệu
Phát triển Frontend
- Làm việc với:
- HTML, CSS, JavaScript
- Bootstrap / Admin Template
- React / Angular / Vue (nếu dự án dùng)
- Tích hợp API vào giao diện
Bảo mật & hiệu năng
- Áp dụng:
- JWT Authentication / OAuth2
- Phân quyền người dùng (Role/Permission)
- Bảo mật:
- Chống SQL Injection, XSS, CSRF
- Mã hóa dữ liệu nhạy cảm
- Tối ưu hiệu năng:
- Caching (Redis, MemoryCache)
- Logging & Monitoring
Kiểm thử & đảm bảo chất lượng
- Tự kiểm thử chức năng trước khi bàn giao
- Fix bug theo yêu cầu QA / khách hàng
- Viết Unit Test (nếu dự án yêu cầu)
- Hỗ trợ UAT
Triển khai & vận hành
- Deploy hệ thống lên:
- Windows Server / Linux Server
- IIS / Docker / VPS / Cloud (Azure, AWS…)
- Cấu hình:
- Domain, SSL
- Database connection
- Hỗ trợ xử lý sự cố sau triển khai
Bảo trì & nâng cấp
- Sửa lỗi phát sinh trong quá trình sử dụng
- Nâng cấp tính năng theo yêu cầu mới
- Tối ưu hệ thống định kỳ
- Backup dữ liệu (nếu thuộc phạm vi)
Tài liệu & báo cáo
Lập trình viên phải cung cấp:
- Tài liệu hướng dẫn cài đặt hệ thống
- Tài liệu cấu trúc database
- Tài liệu API (Swagger / Postman)
- Báo cáo tiến độ công việc định kỳ
Phối hợp công việc
- Làm việc với:
- BA (Business Analyst)
- Tester
- UI/UX Designer
- DevOps
- Tham gia họp kỹ thuật, họp tiến độ
- Tuân thủ quy trình phát triển (Agile/Scrum nếu có)
Yêu cầu về quy trình làm việc
- Sử dụng Git để quản lý mã nguồn
- Tuân thủ coding convention của dự án
- Không tự ý thay đổi yêu cầu khi chưa được phê duyệt
- Bảo mật mã nguồn và dữ liệu dự án
Trách nhiệm trong hợp đồng
- Bảo mật thông tin dự án
- Không sử dụng mã nguồn cho mục đích cá nhân
- Chịu trách nhiệm về phần code được giao
- Hỗ trợ kỹ thuật trong thời gian bảo hành phần mềm