Các công ty phần mềm thường yêu cầu các ứng viên phải đáp ứng các kỹ năng về kỹ thuật như nắm vững ngôn ngữ lập trình, các thuật toán, kiến thức về máy tính (phần cứng, hệ điều hành...).
Bên cạnh đó, các công ty còn rất cần các lập trình viên có các tố chất “không kỹ thuật” như tính kỷ luật cao, chăm chỉ, khả năng làm việc theo nhóm, khả năng giao tiếp, trao đổi thông tin. Ở các vị trí quản lý, khả năng nắm bắt và hiểu các lĩnh vực khác có liên quan đến đối tác đặt hàng viết phần mềm như tài chính, kế toán hay sản xuất là một tố chất rất quan trọng.
Về vấn đề bằng cấp, nếu ứng viên có bằng cấp như nhà tuyển dụng yêu cầu, ứng viên đó sẽ được ưu tiên. Tuy nhiên, nhà tuyển dụng vẫn dựa vào năng lực thực sự của ứng viên để quyết định có tuyển hay không.
Ngoài những nhân lực sản xuất trực tiếp (lập trình viên), các công ty phần mềm cũng tuyển các vị trí quản trị mạng; chuyên viên về an toàn và bảo mật thông tin, chuyên viên kiểm tra, thử nghiệm sản phẩm; chuyên viên viết tài liệu hướng dẫn, đóng gói sản phẩm.