Software Engineer
Apply NowCompany: Super Micro Computer, Inc
Location: San Jose, CA 95123
Description:
Job Req ID: 26372
About Supermicro:
Supermicro is a Top Tier provider of advanced server, storage, and networking solutions for Data Center, Cloud Computing, Enterprise IT, Hadoop/ Big Data, Hyperscale, HPC and IoT/Embedded customers worldwide. We are the #5 fastest growing company among the Silicon Valley Top 50 technology firms. Our unprecedented global expansion has provided us with the opportunity to offer a large number of new positions to the technology community. We seek talented, passionate, and committed engineers, technologists, and business leaders to join us.
Job Summary:
As a Software Engineer, you will develop and optimize software solutions for cluster management, benchmark automation and quality control, ensuring our product with both high performance and reliability. Your role will involve designing and implementing both frontend and backend systems, maintaining team website and code base.
You will work closely with engineering teams to understand scope of AI/HPC benchmarks and build efficient, user-friendly software solutions. This includes developing web-based interfaces, APIs, and backend services while also running performance benchmarks on AI/HPC applications to identify bottlenecks and optimize resource utilization.
As part of a high-impact engineering team, you will contribute to full-stack development, performance tuning, and troubleshooting, ensuring that software solutions meet the demands of large-scale computing environments.
Essential Duties and Responsibilities:
Include the following essential duties and responsibilities (other duties may also be assigned):
Develop and optimize software for AI/HPC benchmark automation, ensuring high performance, scalability, and user-friendly
Design and implement full-stack applications, including frontend (UI/UX) and backend (APIs, databases, and services) for system management and monitoring
Run and analyze benchmarks for AI/HPC applications, identifying performance bottlenecks and implementing optimizations
Develop and maintain automation scripts for deployment, monitoring, and benchmarking processes
Write clean, maintainable, and well-documented code, following best practices in software engineering
Integrate software solutions with AI/HPC clusters, ensuring seamless communication between different system components
Work with databases and distributed systems to manage large-scale data efficiently
Stay up to date with emerging technologies in AI/HPC and software development to continuously improve solutions
Collaborate with engineering teams and customers to define requirements, troubleshoot issues, and enhance system performance
Participate in on-site deployments and customer support, ensuring smooth software integration and troubleshooting performance issues as needed
Qualifications:
BS or higher in Computer Science, Software Engineering, or a related technical field
3+ years of experience in software development, with a focus on backend, frontend, and system performance optimization
Proficiency in at least two of Python/Shell/Java/C++ for backend development and automation
Strong knowledge of JavaScript, HTML, and web design for building responsive and user-friendly interfaces
Experience with RESTful APIs development and integration
Familiarity with BMC, OpenBMC and Redfish API for system management and monitoring
Experience working with databases (SQL or NoSQL) for data storage and retrieval
Hands-on experience with Docker for containerized applications
Exposure to Kubernetes for container orchestration is a plus
Strong problem-solving skills with the ability to analyze benchmarking results and optimize software performance
Experience with HPC/AI cluster environments, parallel computing and system-level software development is a plus
Ability to work independently and in a team, managing multiple projects in a fast-paced environment
Excellent communication skills, with the ability to document and explain technical concepts effectively
Travel required, and occasional work outside of regular business hours may be necessary
Salary Range
$100,000 - $135,000
The salary offered will depend on several factors, including your location, level, education, training, specific skills, years of experience, and comparison to other employees already in this role. In addition to a comprehensive benefits package, candidates may be eligible for other forms of compensation, such as participation in bonus and equity award programs.
EEO Statement
Supermicro is an Equal Opportunity Employer and embraces diversity in our employee population. It is the policy of Supermicro to provide equal opportunity to all qualified applicants and employees without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, age, disability, protected veteran status or special disabled veteran, marital status, pregnancy, genetic information, or any other legally protected status.
About Supermicro:
Supermicro is a Top Tier provider of advanced server, storage, and networking solutions for Data Center, Cloud Computing, Enterprise IT, Hadoop/ Big Data, Hyperscale, HPC and IoT/Embedded customers worldwide. We are the #5 fastest growing company among the Silicon Valley Top 50 technology firms. Our unprecedented global expansion has provided us with the opportunity to offer a large number of new positions to the technology community. We seek talented, passionate, and committed engineers, technologists, and business leaders to join us.
Job Summary:
As a Software Engineer, you will develop and optimize software solutions for cluster management, benchmark automation and quality control, ensuring our product with both high performance and reliability. Your role will involve designing and implementing both frontend and backend systems, maintaining team website and code base.
You will work closely with engineering teams to understand scope of AI/HPC benchmarks and build efficient, user-friendly software solutions. This includes developing web-based interfaces, APIs, and backend services while also running performance benchmarks on AI/HPC applications to identify bottlenecks and optimize resource utilization.
As part of a high-impact engineering team, you will contribute to full-stack development, performance tuning, and troubleshooting, ensuring that software solutions meet the demands of large-scale computing environments.
Essential Duties and Responsibilities:
Include the following essential duties and responsibilities (other duties may also be assigned):
Develop and optimize software for AI/HPC benchmark automation, ensuring high performance, scalability, and user-friendly
Design and implement full-stack applications, including frontend (UI/UX) and backend (APIs, databases, and services) for system management and monitoring
Run and analyze benchmarks for AI/HPC applications, identifying performance bottlenecks and implementing optimizations
Develop and maintain automation scripts for deployment, monitoring, and benchmarking processes
Write clean, maintainable, and well-documented code, following best practices in software engineering
Integrate software solutions with AI/HPC clusters, ensuring seamless communication between different system components
Work with databases and distributed systems to manage large-scale data efficiently
Stay up to date with emerging technologies in AI/HPC and software development to continuously improve solutions
Collaborate with engineering teams and customers to define requirements, troubleshoot issues, and enhance system performance
Participate in on-site deployments and customer support, ensuring smooth software integration and troubleshooting performance issues as needed
Qualifications:
BS or higher in Computer Science, Software Engineering, or a related technical field
3+ years of experience in software development, with a focus on backend, frontend, and system performance optimization
Proficiency in at least two of Python/Shell/Java/C++ for backend development and automation
Strong knowledge of JavaScript, HTML, and web design for building responsive and user-friendly interfaces
Experience with RESTful APIs development and integration
Familiarity with BMC, OpenBMC and Redfish API for system management and monitoring
Experience working with databases (SQL or NoSQL) for data storage and retrieval
Hands-on experience with Docker for containerized applications
Exposure to Kubernetes for container orchestration is a plus
Strong problem-solving skills with the ability to analyze benchmarking results and optimize software performance
Experience with HPC/AI cluster environments, parallel computing and system-level software development is a plus
Ability to work independently and in a team, managing multiple projects in a fast-paced environment
Excellent communication skills, with the ability to document and explain technical concepts effectively
Travel required, and occasional work outside of regular business hours may be necessary
Salary Range
$100,000 - $135,000
The salary offered will depend on several factors, including your location, level, education, training, specific skills, years of experience, and comparison to other employees already in this role. In addition to a comprehensive benefits package, candidates may be eligible for other forms of compensation, such as participation in bonus and equity award programs.
EEO Statement
Supermicro is an Equal Opportunity Employer and embraces diversity in our employee population. It is the policy of Supermicro to provide equal opportunity to all qualified applicants and employees without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, age, disability, protected veteran status or special disabled veteran, marital status, pregnancy, genetic information, or any other legally protected status.