Software Engineer

Meta Meta · Big Tech · New York, NY

Software Engineer role at Meta focusing on developing operating systems-level software, compilers, and network distribution software for large distributed components. The role involves building new features, improving existing products, and working on problems of moderate scope. Responsibilities include pushing code, driving development of systems behind products, creating web applications, building high-volume servers, and connecting people globally. The role requires a strong understanding of the product area, codebase, and systems, with proficiency in data analysis, programming, and software engineering. Candidates are expected to produce high-quality code with good test coverage, use modern abstractions and frameworks, work independently, and complete tasks on schedule. The position also involves mastering internal development standards and actively participating in feedback.

What you'd actually do

  1. Research, design, develop, build and test operating systems-level software, compilers, and network distribution software for large distributed components that run applications.
  2. Build new features and improve existing products.
  3. Work on problems of moderate scope.
  4. Push code, drive the development of the systems behind our products, create web applications that reach billions of people, build high volume servers, and be a part of a team to connect people around the globe.
  5. Develop a strong understanding of relevant product area, codebase, and/or systems.

Skills

Required

  • Bachelor’s degree (or foreign degree equivalent) in Computer Science, Computer Software, Computer Engineering, Applied Sciences, Mathematics, Physics, or related field
  • 1 year of work experience in the job offered or in a computer-related occupation
  • Coding in one of the following industry-standard languages: C, C++, C#, Python, Java, or Javascript Python, PHP, or Haskell
  • Relational databases and SQL
  • Software development tools: Code editors (VIM or Emacs), and revision control systems (Subversion, GIT, or Perforce)
  • Linux, UNIX, or other *nix-like OS including file manipulation and simple commands
  • Core web technologies: HTML, CSS, or JavaScript
  • Building highly-scalable performant solutions
  • Distributed systems including sharding, consistency, and availability
  • Algorithms