Nó thực sự phụ thuộc vào bản chất của doanh nghiệp mà bạn đang áp dụng. Nếu họ đang tìm kiếm một người có kỹ năng lập trình và kiến trúc dựa trên OO tốt, C # có thể tốt như điều tiếp theo.
Nếu họ tự hào về tốc độ / khả năng phản hồi của phần mềm, thì bạn sẽ cần biết các thuật toán của mình vì điều này quan trọng hơn tối ưu hóa vi mô - Bảng Hash so với tra cứu tuyến tính, v.v. C # vẫn có liên quan ở đây, nhưng bạn cần để chứng minh sự hiểu biết về các đặc tính hiệu suất - chẳng hạn, không phải ai cũng biết về ngen.exe.
Nếu chúng vào môi trường được nhúng / di động và / hoặc không rác, bạn thực sự cần biết về cách quản lý bộ nhớ hiệu quả. Con trỏ thông minh, như @DeadMG đã chỉ ra, là chìa khóa ở đây, nhưng hiểu được cấu hình cấp phát bộ nhớ cũng vậy. Các lập trình viên trò chơi thường phân bổ trước các mảng lớn của các đối tượng và tái chế chúng để biết các yêu cầu bộ nhớ từ trước và giảm các ẩn số trên cơ sở mỗi khung hình. Đây cũng là kỹ thuật được sử dụng trong TableViews cuộn trong iOS.
Nếu có bất kỳ hoạt động tích hợp nào, bạn có thể cần chuyên môn ở cấp độ C về mặt sắp xếp dữ liệu giữa các ngôn ngữ (như P / Gọi) nhưng cũng hiểu được mức độ byte về cách các cấu trúc dữ liệu này có thể được sử dụng, điều này không phổ biến trong C # theo kinh nghiệm của tôi.