Tôi có nên bao gồm `assembly` làm ngôn ngữ lập trình trong CV không? [đóng cửa]


15

Trong câu trả lời cho một câu hỏi ai đó đã viết rằng assembly is not a language, it's a process. Tôi có xu hướng đồng ý, vì "ngôn ngữ" lắp ráp phụ thuộc vào kiến ​​trúc mà nó sẽ chạy, có thể khác nhau một chút từ CPU này sang CPU khác.

Vì vậy, nếu bạn đã viết lắp ráp cho một kiến ​​trúc, điều đó có nghĩa là bạn có thể đưa nó vào CV theo chỉ assemblyvới các ngôn ngữ lập trình khác? Hay bạn nói rõ ràng rằng bạn đã viết lắp ráp cho kiến ​​trúc cụ thể đó?

EDIT: Đã thay đổi 'nhúng' thành 'bằng văn bản'. Tiếng Anh không phải là ngôn ngữ mẹ đẻ của tôi và tôi đã hiểu nhầm thuật ngữ này, nghĩ rằng nó có nghĩa là bạn đã sử dụng nó rất nhiều thay vì chỉ một chút.

Câu trả lời:


22

Có thể tôi là người phạm tội, nhưng "trình biên dịch" không phải là ngôn ngữ lập trình, nó là một phần mềm để dịch các bản ghi nhớ hướng dẫn lắp ráp thành opcodes cho một bộ xử lý cụ thể. Nếu bạn muốn nói rằng bạn biết ngôn ngữ lắp ráp , hãy liệt kê Ngôn ngữ hội cho bộ xử lý XXX trong CV của bạn.


10
+1. Hoàn toàn đồng ý. Trừ khi OP thực sự lập trình phần bên trong của một "Trình biên dịch", sử dụng Assembly Language for XXX processorsẽ là cách để đi
Jagmag

2
+1: Đây có lẽ chính xác là sự khác biệt mà trích dẫn câu hỏi đang cố gắng thực hiện. Trình biên dịch không phải là một ngôn ngữ; Hội là. Nhận sai có lẽ nghe tệ như nói C + .
doppelgreener

Vâng, tôi có nghĩa là lắp ráp , không phải lắp ráp . Cảm ơn cho điểm nó ra. Câu hỏi sửa đổi. ^^
gablin

Rất tiếc. Tôi biết một anh chàng IBM, người luôn mô tả nó như là viết bằng "trình biên dịch". Anh ấy rất thông minh.
Erik Reppen

12

Tôi nghĩ câu hỏi về việc về mặt kỹ thuật, ngôn ngữ có hơi không liên quan hay không, mặc dù nó không bao giờ bị tổn thương là chính xác (vì vậy, bao gồm kiến ​​trúc cụ thể nếu bạn liệt kê nó và có thể đặt Ngôn ngữ hội chứ không phải là Trình biên dịch, mặc dù tôi đã đọc cá nhân sau đó là một tốc ký hợp lý chứ không phải là một sai lầm để bị phạt).

Những điều tôi chắc chắn rằng tôi đã nghĩ về nhiều hơn thế này là:

1) Điều chính: nó sẽ giúp bạn có được công việc trong câu hỏi? Bạn nên điều chỉnh CV của mình tùy theo vai trò và với mỗi người hãy tự hỏi liệu điều này có khiến tôi trông ứng cử viên tốt hơn cho vị trí này không . Không có tuyệt đối, nó phụ thuộc và công việc trong câu hỏi.

2) Bạn có vui khi được hỏi những câu hỏi về nó trong một cuộc phỏng vấn không? Là kiến ​​thức của bạn hiện tại và lên đến một tiêu chuẩn tốt? Về cơ bản nếu bạn đặt nó vào CV, đó là trò chơi công bằng cho các câu hỏi, vì vậy hãy chắc chắn rằng bạn hài lòng với điều đó và bạn cảm thấy tuy nhiên bạn chọn trình bày nó thể hiện chính xác mức độ hiểu biết của bạn.

3) Và tiếp theo từ đó, đặt nó ở đâu? Giả sử bạn nói rằng bạn đã hiểu được có lẽ giải pháp tốt nhất là trong phần Sở thích khác, bạn có thể nói "Tôi rất quan tâm đến công nghệ và đã dành thời gian riêng để điều tra một loạt các ngôn ngữ và nền tảng bên ngoài bộ kỹ năng cốt lõi của tôi bao gồm 6800 ( hoặc bất cứ điều gì) Ngôn ngữ hội.


5

Tôi sẽ không đặt "trình biên dịch" cho cùng một lý do tôi sẽ không đặt "trình biên dịch".

Mặc dù tôi phải thừa nhận rằng tôi không chắc chắn tôi muốn bao gồm bất cứ điều gì mà tôi vừa "vọc".

Dù sao, CV của tôi không bao gồm "ngôn ngữ lắp ráp 6502". Thật thú vị, tôi không mong đợi được viết lại cho 6502 bất cứ lúc nào sớm (tôi chủ yếu là lập trình viên C # ngày nay) nhưng tôi đưa nó vào vì nó truyền đạt những điều thú vị về tôi và trải nghiệm của tôi:

  1. Nó chỉ ra rằng tôi biết làm thế nào những thứ máy tính này thực sự hoạt động ở mức khá thấp. Điều này có nghĩa là tôi hiểu những gì đang xảy ra khi tôi viết mã cấp cao và kiến ​​thức này vẫn hữu ích để giải quyết vấn đề và gỡ lỗi mã.
  2. Nó gợi ý rằng tôi biết về các kỹ thuật để quản lý bộ nhớ, tối ưu hóa, nhưng vặn vẹo v.v ... thường bị mất đối với các lập trình viên không xử lý mọi thứ ở cấp độ này.
  3. Nó cho thấy rằng tôi đã có một thời gian, với rất nhiều kinh nghiệm là một nhà phát triển.
  4. Nó gợi ý rằng tôi vẫn có thể hoàn thành công việc ngay cả khi các công cụ hiện đại của tôi làm tôi thất vọng (như đôi khi chúng làm).
  5. Nó thường gợi ra sự quan tâm khi phỏng vấn.

Điểm cuối cùng này là chìa khóa. Tôi đã có những cuộc trò chuyện thú vị và có lợi khi phỏng vấn dựa trên việc tôi đề cập đến 6502, điển hình là người phỏng vấn cũng đã lập trình bằng ngôn ngữ lắp ráp (dưới bất kỳ hình thức nào, đặc biệt là 6502). Điều này chắc chắn không gây hại cho tôi và có thể đã giúp tôi đảm bảo vị trí hiện tại của mình.


Ah, tôi đã có ấn tượng rằng "vơ vét" có nghĩa là bạn đã làm nó rất nhiều. Câu hỏi sửa đổi. Lần nữa. ^^
gablin

4

Tôi muốn gửi bằng cách nào đó theo 'trải nghiệm kiến ​​trúc', có lẽ giống như thế này:

"Đã chuyển thành công (kernel hoặc hệ thống con) sang [arch], theo kiến ​​thức chuyên sâu về lắp ráp [arch]."

Tôi sẽ khá súc tích trong khu vực 'mục tiêu' của bạn, cho biết rõ ràng những gì bạn hy vọng sẽ làm việc với. Nó sẽ hút nếu bạn được thuê, sau đó được trao một đống rác cũ đã được chuyển.


2

Viết trình biên dịch và bao gồm kiến ​​trúc CPU cụ thể. Nếu không, bạn đưa ra dấu hiệu rằng bạn đã không hiểu trình biên dịch chương trình. Cũng xem xét để bao gồm trình biên dịch nếu nó phù hợp cho công việc mới.


1

Trong sơ yếu lý lịch của bạn, thông thường bạn nên có một phần dành cho ngôn ngữ lập trình, phần khác dành cho ngôn ngữ hợp ngữ (tất nhiên nếu bạn biết ngôn ngữ hợp ngữ đó) v.v ... Đây là một ví dụ:

Thông tin kỹ thuật:
Ngôn ngữ lập trình: Algol, COBOL, Pascal, Lisp
hội Ngôn ngữ: x86, x86-64

Chỉ cần chắc chắn rằng bạn có thể bảo vệ những gì bạn đã viết trong CV của bạn. Nếu bạn đã thực hiện các dự án cụ thể bằng ngôn ngữ lắp ráp, hãy liệt kê rõ ràng trong phần Chi tiết dự án . Tôi cũng khuyên bạn nên đề cập đến một số hướng dẫn quan trọng hơn mà bạn đã sử dụng.


1

Tôi nghĩ rằng có nhiều lý do gần như trực giao khác nhau để viết trình biên dịch chương trình, và có thể không có nhiều điểm chung ngoài việc có thể chuyển đổi qua được trong ngôn ngữ trình biên dịch. Ví dụ sẽ bao gồm:

(1) Tạo hiệu suất đập thế giới cho các hạt nhân toán học quan trọng. Biết toán, kiến ​​trúc máy tính, v.v.

(2) Đã viết rất nhiều trình biên dịch để gỡ lỗi phần cứng mới. Có thể biết rất ít về các đặc tính hiệu suất của máy đã cho, nhưng biết rất nhiều về việc xác minh phần cứng.

(3) Có thể đọc trình biên dịch được tạo trình biên dịch như một công cụ để gỡ lỗi.

(4) Có thể sử dụng trình biên dịch để có được các tính năng CTNH không được hỗ trợ bởi các ngôn ngữ cấp cao hơn.

(5) Viết các phụ trợ của trình biên dịch và xem trình biên dịch được tạo để điều chỉnh các thuật toán tạo / tối ưu hóa mã như là một phần của nhóm trình biên dịch.

Nói chung, tôi nghĩ rằng sự tương quan trong các kỹ năng giữa các nhiệm vụ riêng biệt này có lẽ không cao lắm. Thuê một người có kinh nghiệm và thể hiện kỹ năng tại nhiệm vụ M cho một công việc đòi hỏi nhiệm vụ N và bạn có thể thất vọng nghiêm trọng trong kết quả.


0

Hội là một ngôn ngữ, có ít nhất một cho mỗi bộ hướng dẫn.

Có, hoàn toàn đặt nó ở đó ngay cả khi bạn viết các ứng dụng web bằng ngôn ngữ cấp cao.

Có lẽ nơi tôi làm việc là ngoại lệ không phải là quy tắc (kinh doanh mạng và kinh doanh chip / bộ xử lý) mà là một số lượng lớn các lập trình viên của chúng tôi biết và viết lắp ráp, và ngay cả khi bạn đang tìm kiếm một công việc điều khiển thiết bị porting hoặc porting, chúng tôi sẽ thấy kinh nghiệm lắp ráp, hỏi bạn câu hỏi về nó và đưa ra quyết định dựa trên câu trả lời của bạn.

Giống như bất cứ điều gì khác trong CV của bạn không liên quan đến công việc bạn đang ứng tuyển, họ sẽ chỉ bỏ qua nó. đây không phải là một loại "ít hơn nhiều". Nếu bạn thực sự biết một cái gì đó đặt nó xuống, ngôn ngữ, bộ xử lý, giao thức, apis, v.v. đó là bất lợi của bạn. Tôi thà có một CV / sơ yếu lý lịch để xem xét khi phỏng vấn một ứng viên hơn là một người cố gắng nhồi nhét những gì họ có thể trên một trang và bỏ qua "thịt". Thông thường một sơ yếu lý lịch như thế không làm cho nó thông qua quá trình sàng lọc trước. Nhân sự thường quét sơ yếu lý lịch cho các từ khóa, đủ từ khóa và bạn tăng lên hàng đầu, không đủ hoặc không có và bạn bị loại bỏ mà không cần phỏng vấn qua điện thoại. Thay vì ít hơn là nhiều hơn, nhiều hơn là nhiều hơn. Đồng thời nếu bạn không thực sự biết ngôn ngữ, hoặc tham gia một lớp học ở trường đại học và đã rất lâu rồi bạn thực sự không nhớ bất kỳ chi tiết nào, hãy bỏ qua nó, đi phỏng vấn với câu trả lời như thế khuyến khích hồ sơ / CV của bạn để nhanh chóng đi đến máy hủy tài liệu.

Có liệt kê nó như một ngôn ngữ lập trình, đó là ngôn ngữ của nó và chỉ định bộ xử lý (họ).

C, C ++, Java, ngôn ngữ lắp ráp (x86, ARM, MIPS), Python, Perl ...

Một số người sẽ liệt kê trình biên dịch không phải là ngôn ngữ TASM, NASM, MASM.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.