MÔ TẢ CÔNG VIỆC
Một kỹ sư phần mềm sẽ tham gia vào 05 giai đoạn của công việc:
Phân tích và thiết kế phần mềm
Phát triển và lập trình phần mềm
Kiểm thử và đảm bảo chất lượng phần mềm
Triển khai phần mềm
Bảo trì và cải tiến phần mềm
1. Phân tích và thiết kế phần mềm:
- Thu thập và phân tích yêu cầu của người dùng đối với sản phẩm phần mềm họ mong muốn sau đó chuyển chúng thành các thông số kỹ thuật (ví dụ: các tính năng cần có, tốc độ, tính bảo mật, tính tiếp cận, khả năng mở rộng,…)
- Thiết kế kiến trúc phần mềm, bao gồm cả cấu trúc dữ liệu và giao diện người dùng.
- Lựa chọn công nghệ và công cụ phù hợp để phát triển phần mềm (ví dụ: lựa chọn ngôn ngữ lập trình, hệ quản trị dữ liệu,…)
2. Phát triển và lập trình phần mềm:
Viết mã theo thiết kế đã định sẵn, sử dụng các ngôn ngữ lập trình như Python, Java, C++, JavaScript…
- Tạo giao diện người dùng (frontend) nếu làm website hoặc ứng dụng di động.
- Xây dựng hệ thống xử lý dữ liệu và logic (backend) để phần mềm hoạt động đúng yêu cầu.
- Kết nối với cơ sở dữ liệu để lưu trữ và truy xuất thông tin.
- Viết API (giao diện lập trình ứng dụng) để các phần mềm có thể giao tiếp với nhau.
Sửa các lỗi xuất hiện trong quá trình viết phần mềm.
3. Kiểm thử và đảm bảo chất lượng phần mềm:
- Chạy thử phần mềm để tìm lỗi (bug).
- Viết các bài kiểm thử tự động (unit test, integration test).
- Kiểm tra hiệu suất và bảo mật để đảm bảo phần mềm chạy nhanh và an toàn.
- Sửa lỗi và cải tiến mã nguồn để đảm bảo phần mềm hoạt động ổn định.
- Tham gia vào quá trình đánh giá và cải tiến chất lượng phần mềm.
4. Triển khai phần mềm:
- Triển khai phần mềm vào môi trường sản xuất, đưa phần mềm lên máy chủ hoặc kho ứng dụng như App Store, Google Play, …
- Theo dõi hiệu suất của phần mềm và khắc phục các sự cố sau khi triển khai.
- Cung cấp hỗ trợ kỹ thuật cho người dùng.
5. Bảo trì và cải tiến phần mềm:
- Giám sát hiệu suất hệ thống và sửa lỗi nếu có vấn đề.
- Cập nhật phần mềm để hỗ trợ tính năng mới hoặc thay đổi yêu cầu của người dùng.
- Tối ưu hóa mã nguồn để phần mềm chạy nhanh hơn, bảo mật tốt hơn.
- Nghiên cứu, cập nhật và thử nghiệm các công nghệ mới.
- Đề xuất các giải pháp sáng tạo để cải thiện phần mềm.
YÊU CẦU CHUNG
Yêu cầu công việc của một lập trình viên hay một kỹ sư phần mềm:
1. Kiến thức chuyên môn
- Thành thạo ít nhất một trong các ngôn ngữ lập trình phổ biến: Python, Java, JavaScript, C++, C#, PHP…
- Hiểu biết về cấu trúc dữ liệu và thuật toán, lập trình hướng đối tượng (OOP), mô hình MVC.
- Có kinh nghiệm làm việc với cơ sở dữ liệu như MySQL, PostgreSQL hoặc NoSQL (MongoDB, Firebase…).
- Hiểu về nguyên tắc thiết kế phần mềm, kiến trúc hệ thống, API, RESTful services.
- Biết cách sử dụng các công cụ quản lý mã nguồn như Git, GitHub, GitLab.
- Nếu làm phát triển web, cần nắm vững HTML, CSS, JavaScript và các framework như React, Angular, Vue.
- Nếu làm phát triển di động, cần kinh nghiệm với Android (Java/Kotlin) hoặc iOS (Swift).
- Hiểu về bảo mật phần mềm, kiểm thử (testing), và các phương pháp phát triển phần mềm như Agile/Scrum.
2. Kỹ năng mềm
- Tư duy logic và giải quyết vấn đề nhanh chóng.
- Khả năng làm việc nhóm, phối hợp với các bộ phận khác (QA, BA, UI/UX…).
- Khả năng tự học hỏi, cập nhật công nghệ mới liên tục.
- Kỹ năng giao tiếp tốt, có thể đọc hiểu tài liệu kỹ thuật bằng tiếng Anh vì phần lớn tài liệu chuyên ngành sẽ sử dụng tiếng Anh.
- Quản lý thời gian tốt, có thể làm việc dưới áp lực cao.
3. Kinh nghiệm thực tế
Nếu có được những kinh nghiệm này sẽ là điểm cộng lớn trong hồ sơ của bạn:
- Đã tham gia hoặc thực hiện các dự án thực tế về phần mềm, ứng dụng web hoặc di động.
- Kinh nghiệm làm việc với hệ thống lớn, triển khai trên Cloud (AWS, Google Cloud, Azure) là một lợi thế.
- Có khả năng tối ưu hóa mã nguồn, hiểu về CI/CD để tự động hóa quy trình phát triển phần mềm.
YÊU CẦU THÊM ĐỐI VỚI NGƯỜI KHIẾM THỊ
Lập trình là một lĩnh vực phù hợp với người khiếm thị và thực tế đã có rất nhiều lập trình viên và kỹ sư phần mềm khiếm thị thành công trên thế giới và ở Việt Nam. Tuy nhiên để tối ưu công việc, đòi hỏi người khiếm thị cần phải có thêm những kỹ năng và công cụ hỗ trợ.
Thứ nhất, người khiếm thị cần có kỹ năng sử dụng các công cụ hỗ trợ. Điều này đòi hỏi ứng cử viên cần phải sử dụng thành thạo trình đọc màn hình (NVDA, Jaws, TalkBack, VoiceOver, …) để làm việc với máy tính và thiết bị di động. Đối với các bạn nhìn kém, các bạn có thể cần đến chức năng phóng to màn hình để hỗ trợ trong lúc làm việc. Ngoài ra, người khiếm thị cần biết cách sử dụng các trình soạn thảo mã nguồn (VS Code, PyCharm, Eclipse, Android Studio...) và lựa chọn các trình soạn thảo phù hợp. Phần lớn các chương trình soạn thảo mã nguồn này đều tiếp cận với trình đọc màn hình. Người khiếm thị cũng cần phải biết sử dụng các công cụ hỗ trợ gỡ lỗi, kiểm thử phần mềm phù hợp với trình đọc màn hình.
Thứ hai, nếu công việc yêu cầu người khiếm thị làm việc có liên quan đến giao diện đồ họa (UI/UX), đặc biệt khi thiết kế giao diện người dùng, người lập trình viên khiếm thị cần hiểu cách làm việc cơ bản với các công cụ như Figma, Photoshop, bên cạnh đó cần hợp tác tốt với nhóm thiết kế để đảm bảo khả năng truy cập. Họ cũng cần có khả năng kiểm tra mức độ truy cập của phần mềm hoặc website, đây sẽ là một lợi thế lớn khi làm việc trong các dự án phát triển phần mềm hướng đến tính tiếp cận toàn diện.
Thứ ba, người khiếm thị cần xây dựng và luyện tập tư duy thích ứng để hòa nhập tốt trong môi trường làm việc. Đôi lúc, họ sẽ gặp phải những khó khăn do hạn chế truy cập của phần mềm, nhưng kỹ năng tìm kiếm các giải pháp thay thế sẽ giúp họ giải quyết những khó khăn này, từ đó chủ động và tự lập hơn trong công việc. Hơn nữa, họ cũng cần phải giao tiếp hiệu quả với đồng nghiệp về các vấn đề liên quan đến tính tiếp cận và đề xuất giải pháp để đảm bảo hiệu năng làm việc của nhóm.
Những điều chỉnh hợp lí
Vị trí kỹ sư phần mềm/lập trình viên đòi hỏi ứng cử viên làm việc chủ yếu trên máy tính, cả máy tính văn phòng và máy tính cá nhân. Riêng đối với người khiếm thị, để họ có thể thao tác được trên máy tính thì chương trình đọc màn hình cần được cài đặt vào máy tính của họ.
Một điều chỉnh cơ bản và quan trọng có thể được thực hiện để giúp nhân viên là người khiếm thị thực hiện công việc của họ ở văn phòng đó chính là cài đặt phần mềm trình đọc màn hình vào máy tính làm việc của họ ở công ty. Đội kỹ thuật (IT) của công ty có thể thực hiện các bước quét kiểm tra phần mềm trước khi cài vào máy tính.
Bên cạnh đó, điều chỉnh các tài liệu liên quan đến công việc thành định dạng tiếp cận sẽ giúp người khiếm thị dễ dàng nắm bắt được nội dung công việc. Một số định dạng tiếp cận có thể kể đến như .doc, .docx, .pdf, .txt,... thể hiện dưới dạng văn bản. Những hình ảnh hay biểu đồ được xem xét là chưa tiếp cận với người khiếm thị.
Một số mẹo hữu ích
Dưới đây là một số mẹo mà bạn có thể tham khảo để giúp công việc lập trình của bạn trở nên nhanh chóng và dễ dàng hơn nhé!
1. Tinh thần tự học: Trong quá trình làm việc, không tránh khỏi những lúc bạn sẽ gặp phải những khó khăn do vấn đề tiếp cận gây ra và bạn phải tự giải quyết những vấn đề này. Những lúc như vậy thì kỹ năng tự tìm tòi, học hỏi và tham khảo các nguồn thông tin trên Google sẽ giúp bạn tháo gỡ những nút thắt này nhanh chóng và dễ dàng hơn. Điều này đòi hỏi bạn phải dành nhiều hơn một tí thời gian và công sức, nhưng kết quả bạn đạt được sẽ ngoài mong đợi đấy!
2. Diễn đàn công nghệ: Những diễn đàn công nghệ sẽ là nơi các bạn tìm được những sự hỗ trợ về kiến thức và kinh nghiệm, đồng thời cũng là nơi các bạn có thể cập nhật kiến thức công nghệ mới. Đừng ngần ngại hỏi để biết thêm nhé!
3. Một số trình soạn thảo mã nguồn tiếp cận:
Hầu hết các trình soạn thảo mã nguồn đều tương thích với trình đọc màn hình NVDA hoặc Jaws. Một số có thể kể đến như:
- VS Code: tương thích tốt, hỗ trợ đầy đủ UI Automation.
- PyCharm: tương thích tốt, cần bật Accessibility Mode.
- Eclipse: tiếp cận tốt.
- Notepad++: hỗ trợ tốt với NVDA và Jaws.
- Visual Studio: tính tiếp cận trung bình, một số UI khó truy cập.
- Android Studio: trung bình, cần phải tinh chỉnh.
- Xcode: chưa hỗ trợ tốt VoiceOver.
4. Trang phục: Môi trường làm việc của những người lập trình viên và kỹ sư phần mềm thường khá thoải mái để tăng tính sáng tạo. Nếu công ty không quy định về đồng phục thì bạn có thể tham khảo một số gợi ý trang phục dưới đây:
- Áo: áo thun có cổ, áo sơ mi,…
- Quần: quần jeans, quần tây, quần kaki dài.
- Váy: có thể cân nhắc các váy công sở, váy chữ A dài qua đầu gối.
Việc chọn màu cho trang phục đôi khi sẽ làm bạn bối rối, đặc biệt với các bạn không nhìn thấy hoàn toàn. Nhưng bạn hoàn toàn vẫn có thể mặc đẹp và chuyên nghiệp với những mẹo dưới đây:
- Quy tắc phối màu đơn giản: bạn có thể mặc một màu sáng (thường là các màu trắng, xanh nhạt, xám nhạt,…) và một màu tối (thường là màu đen, xanh đậm, xanh đen,…). Thường quần/váy màu đen/xanh đen/xanh đậm có thể phối hợp với mọi loại áo.
- Dùng ứng dụng trợ giúp: Đôi lúc không tránh khỏi việc bạn quên mất áo/quần này màu gì, đừng quên rằng các ứng dụng như Be My Eyes, Seeing AI, Lookout có thể giúp bạn nhận diện màu sắc đấy nhé.
- Ngoài ra, ý kiến của người thân, bạn bè cũng là nguồn tham khảo hữu ích đấy!
Share via:
EmailFacebookTwitterGoogleLinkedin

