- Research, design, develop, build and test operating systems-level software, compilers, and network distribution software for large distributed components that run applications.
- Build new features and improve existing products.
- Work on problems of diverse scope and design core, backend software components.
- Handle large scale data storage, synchronization and coordination of large server cluster, and provide a runtime environment for front end code.
- Receiving little instruction on day-to-day work, code using primarily C/C++, Java, PHP and Hack.
- Interface with other teams to incorporate their innovations and vice versa.
- Conduct design and code reviews.
- Analyze and improve efficiency, scalability, and stability of various system resources.
- Complete medium to large features (each with many tasks) independently without guidance.
- Identify and drive changes as needed for assigned codebase, product area and/or systems.
- Telecommuting is permitted from anywhere in the United States.
- Requires a Master's degree in Computer Science, Engineering, Mathematics, Physics, or related field and 48 months of work experience in job offered or in a related occupation. Foreign degree equivalent accepted.
Experience must include 48 months involving the following: - 1. Coding in C, C++, Java, or C#
- 2. Building large-scale infrastructure applications
- 3. Python, PHP, or Haskell
- 4. Relational databases and SQL
- 5. Software development tools: Code editors (VIM or Emacs), and revision control systems (Subversion, GIT, or Perforce)
- 6. Linux, UNIX, or other *nix-like OS as evidenced by file manipulation, advanced commands, and shell scripting
- 7. Core web technologies: HTML, CSS, or JavaScript
- 8. Build highly-scalable performant solutions
- 9. Data processing, programming languages, databases, networking, operating systems, computer graphics, or human-computer interaction
- 10. Applying algorithms and core computer science concepts to real world systems as evidenced by recognizing and matching patterns from different areas of computer science in production systems
- 11. Distributed systems.
Individual pay is determined by skills, qualifications, experience, and location. Compensation details listed in this posting reflect the base salary only, and do not include bonus, equity or sales incentives, if applicable. In addition to base salary, Meta offers benefits. Learn more about benefits at Meta.