Data Center Software Engineer I
1 Hacker Way Menlo Park, CA 94025
Our data centers have a lot of different kinds of Processors and ASICs. Efficiently using these hardware requires a good performance model that estimates the performance of the hardware under various workloads. You will develop a framework which will model different kinds of Architectures at the micro architectural level. The framework will provide APIs for higher levels of the software to express workloads on a per-core basis. The framework will then evaluate the overall amount of work, analyze bottlenecks and estimate the overall performance. This work also involves estimating performance of workloads on real processors to empirically estimate their performance.
- Expert knowledge of C++ and python
- Understanding of good program design concepts
- 2 years of industry experience or contributions to impactful projects
- Understanding of modern processor architectures
- Understanding of optimization techniques to get software running efficiently on hardware (cache alignment, multi threading, bandwidth optimization, instruction reordering, etc.)
Education: Bachelors of Science in Computer Science, Electrical Engineering, Mathematics or related sciences.