SENIOR SOFTWARE SCALE ARCHITECT
Who is Cray?
Our business is supercomputing. Our primary aim is understanding the problems our customers are trying to solve and developing the technologies that enable them to make the discoveries that better our world. Cray combines computation and creativity so visionaries can keep asking questions that challenge the limits of possibility. Drawing on more than 45 years of experience, Cray develops the world’s most advanced supercomputers, pushing the boundaries of performance, efficiency and scalability. Cray continues to innovate today at the convergence of data and discovery, offering a comprehensive portfolio of supercomputers, high-performance storage, data analytics and artificial intelligence solutions.
We are proud to be an Equal Opportunity Employer including women, minorities, protected veterans, and individuals with disabilities. CRAY Inc. is an Affirmative Action, Equal Opportunity Employer.
Who We Need
For those who ask what if, Cray is a partner that merges computation and creativity to extend the boundaries of what you can discover. Our greatest achievements are realized when we face what seems impossible, and that’s why we invite those who believe anything is possible to join us and to keep asking what if, why not, and what’s next.
At Cray we’re always looking way down the road … years, even decades into the future. We’re not developing products for next quarter. We’re developing products for questions our customers might not even know they have yet. That’s how high-performance computing works. So as you can imagine, we pay very close attention to what’s coming … and that includes the next generation of computer scientists and engineers. These individuals are going to be the ones shouldering an awesome responsibility in the coming decades as big data gets bigger, artificial intelligence flexes its muscles more and more, and problems grow in complexity.
Who You Are
As a member of the System Software Architecture Team, this Architect is responsible for driving the key scale and performance principles across the Cray HPC software stack. This Architect will be expected to lead and collaborate with engineering teams across Cray to identify scale and performance issues, architectural changes and improvements to software and hardware. They will also be responsible for working with industry partners, tracking and integrating new and evolving industry efforts around both scale-up and scale-out system design to implement the highest scale systems in the world. The successful candidate will perform technical leadership of large high performance computing (HPC) system developments.
• Creating a supportive and productive environment for the engineering team providing technical team leadership, addressing barriers and issues, and driving technical decisions
• Tracking issues across multiple projects concurrently
• Driving and supporting the generation of product requirement documents in response to market requirements
• Diagnosing and analyzing development and production systems
• Prioritizing types of scale and performance issues, and evaluating for most impact and customer value
• Participating in architectural software reviews, designing and implementing enterprise class software, ensuring that the design and implementation meet architectural goals as well as mentoring other junior engineers.
• This person must be willing to work in a fast-paced environment and embrace new challenges.
• The ideal candidate will have very strong technical skills with a proven track record of delivering complex software solutions as well as excellent interpersonal skills that enable teamwork.
• Delegating work, reviewing designs, aiding in code reviews, and mentoring team members
• BS in Computer Science or Computer Engineering (or an equivalent combination of education and experience) and a minimum of 10 years of experience managing the architecting, designing, developing, and debugging new software for new hardware.
• Committed to process of collecting key use cases, deriving an appropriate architecture based on fundamentals established design principles, and executing against practical resource and schedule constraints.
• Strong written and verbal communication skills and the ability to work successfully in a team environment.
• The ability to understand the issues related to supporting distributed systems, scale-out availability system management, event routing, high availability, and development around out-of-band monitoring.
• Senior technical leadership experience driving architecture.
• Aiding managers with planning of projects. (Use of MS-Project or JIRA is a plus)
• Strong Linux or Unix software development expertise, with proven ability to produce high quality deliverables.
• Strong full-stack software design expertise. Expert level knowledge of operating system architecture, networking, files systems, and databases.
• Proven experience diagnosing scale and performance issues in development and production systems.
• Commitment to sound software engineering principles and a demonstrated knowledge of the full development lifecycle – Agile development expertise is a strong plus.
• Expert level programming ability in C/C++, Python, and Java.
• High Performance Computing experience is a plus.
• Outstanding problem solving skills.
• Ability to work well in a cooperative development environment, both within and across teams.
• Fearless and willing to take on any engineering challenge.
• Very strong leadership and mentoring skills.
• Excellent written and verbal communications skills.
*Please note that Cray does not use Google Hangouts for any interviews.
As part of our standard hiring process for new employees, employment with CRAY will be contingent upon successful completion of a comprehensive background check.