Software Engineer, Systems

Meta Meta · Big Tech · Menlo Park, CA +1 · Remote

Software Engineer role focused on building and testing operating systems-level software, compilers, and network distribution software for large distributed systems at Meta. The role involves developing new features, improving existing products, and working on high-volume servers and web applications. Requires a Bachelor's degree and 24 months of experience in software development, including coding in standard languages, working with databases, Linux, core web technologies, scalable solutions, distributed systems, and algorithms.

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 Facebook.
  2. Build new features and improve existing products.
  3. Work on problems of moderate scope, push code, drive the development of the systems behind Facebook's 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.
  4. Develop a strong understanding of relevant product area, codebase, and/or systems.
  5. Demonstrate proficiency in data analysis, programming and software engineering.

Skills

Required

  • Bachelor's degree or foreign equivalent in Computer Science, Computer Software, Computer Engineering, Applied Sciences, Mathematics, Physics, or related field
  • 24 months of experience in the job offered or in a computer-related occupation
  • Coding in an industry-standard language (e.g. Java, Python, C++, or JavaScript)
  • C, C++, C#, or Java
  • 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