Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I always saw a lot of ads of programming jobs before.

But I never saw an ad of operating systems development job before. I also never met personally someone who worked as operating system's programmer or something related to osdev before (I once saw a teacher at college talking about it, but I can't remember if she was talking about osdev).

I would like to know:

  1. What are the qualifications for an osdev position (years of experience, college/university, languages, etc)?
  2. What a beginner that wants to work in this area should do?
  3. How the work a of an OS developer looks like?
share|improve this question
add comment

2 Answers

up vote 6 down vote accepted

Most required skills would be excellent practical knowledge of C or Assembly languages. Plus, some CS education and work experiences.

Here is the detailed list of minimum requirements that are usually asked.

  • The qualified candidate has excellent C skills and is proficient in all aspects of software development, including design, specification, implementation, testing, documentation and version control
  • The candidate OS developer has excellent knowledge of Operating Systems for embedded systems: e.g., Linux, RTEMS, eCos, or similar;
  • The candidate has 2+ years of experience in software development for ARM-based SoC;
  • The candidate has experience in porting real-time OS to SoC platforms;
  • BSc or MSc in Computer/Electrical engineering.
share|improve this answer
3  
Excellent answer. Where did you got that? Your answer says "Computer/Electrical engineering", what about compsci? –  Victor Jul 12 '12 at 21:32
1  
This is obviously pasted from a specific job advert (like many vacancies, the one guy in the world who has those skills just quit, and as they have no idea what he really did, they pasted the skills list from his resume into the job advert.....) - There is little advantage being an ARM expert if you are writing an OS for an x86. Experience in # of years is irreverent unless/until you have specific job in mind. –  mattnz Jul 13 '12 at 0:43
    
quick info, presented list of requirements was compiled from job posts. –  Yusubov Jul 13 '12 at 1:26
add comment

This is not a complete answer. But you maybe need to know

WHAT IS AN OPERATING SYSTEM?

  • subject: memory management, Process Management(SCHEDULING, IPC), File Management, I/O System Management, Device management(device drivers),
  • Algorithms for: ...
  • OS Architecture(Monolithic, Layered, Mikrokernel, ...)
  • Types of OS: Real time OS, Single User single Task, Single User Multi Task, Multi User Multi Task
  • Computer Architecture (CISC, RISC, ...)

Programming Language

  • Assembly, C

Maybe you do not need to be a expert in all this subject, but you must have a good understanding about the subject you want to work.

PS: All this subject is part of computer science course - http://www.acm.org/education/curricula/

Read

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.