Facebook's mission is to give people the power to build community and bring the world closer together. Through our family of apps and services, we're building a different kind of company that connects billions of people around the world, gives them ways to share what matters most to them, and helps bring people closer together. Whether we're creating new products or helping a small business expand its reach, people at Facebook are builders at heart. Our global teams are constantly iterating, solving problems, and working together to empower people around the world to build community and connect in meaningful ways. Together, we can help people build stronger communities - we're just getting started.
The CAD Methodology Team is responsible for defining, enabling, and supporting design and verification products and processes used by various ASIC development teams within Facebook. This includes a collection of configurable hardware IP, a suite of software tools around those IP, and support and documentation of best practices for their usage.This position involves planning, design, and implementation of features in a new front-end application, as well as in an older, more mature front-end application. Both applications will be/are used heavily by various ASIC design groups within Facebook, so effective communication with these groups will be key. The position requires quickly getting up to speed with the frameworks of these applications, then implementing various features based on a set of requirements.
- Play a significant role in the early software development of a new bleeding-edge front-end application built with the latest web technologies to be used by other groups in their ASIC design and verification efforts
- Provide software development support for a more mature front-end application currently being heavily used by other groups for ASIC design and verification
- Interface with tool users in other groups to achieve tasks ranging from the collection of requirements to addressing bugs, and everything in between, for these front-end tools
- Currently has, or is in the process of obtaining, a Bachelors or Masters in Computer Science or Electrical Engineering, or related field
- Must obtain work authorization in the country of employment at the time of hire, and maintain ongoing work authorization during employment
- Firm grasp of object oriented programming principles and software design patterns
- Experience with Hardware Silicon
- Intent to return to degree-program after the completion of the internship/co-op
- Industry experience in Java development in the Eclipse Rich Client Platform (RCP) environment
- Some experience with web application frameworks (e.g. Visual Studio Code, Eclipse Theia)