Sr. Software Engineer

Date: Apr 16, 2024

Location: Bade, Taiwan, TW

Company: Super Micro Computer

Job Req ID: 23721

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:

Supermicro is seeking a top-notch hands-on Sr. Software Engineer to work on PCIe, SAS/SATA, USB and other HW related areas of storage and server products. As part of our small but important software engineering team, you will be responsible for leading the projects and provide technical expertise and recommendations to support and enhance our development projects.

Essential Duties and Responsibilities:

  1. Project Development: Craft, develop, and maintain Python Cloud and web-based applications, with a specific focus on AI, cloud-native, and HPC applications.
  2. Technical Expertise: Provide technical guidance and hands-on expertise in cloud and web-based application development, including code reviews, architecture design, and troubleshooting complex technical issues.
  3. Database Management: Demonstrate strong experience in SQL and NoSQL databases, including database design, optimization, and query performance tuning.
  4. Collaboration: Work closely with product managers to define project requirements, prioritize tasks, and communicate progress to stakeholders.
  5. Quality Assurance: Implement and maintain coding standards, best practices, and quality assurance processes to ensure the reliability and performance of software applications.
  6. Innovation: Stay updated on emerging trends in web-based application development, identify opportunities for process improvements, and introduce new technologies when appropriate.
  7. Resource Management: Effectively allocate resources, manage project timelines, and balance workload distribution within the development team.

Qualifications:

  1. Bachelor's degree in Computer Science or a related field.
  2. Minimum of 5 years of professional experience in cloud and web-based application development.
  3. Strong proficiency in Python and related libraries/frameworks.
  4. Strong experience with SQL and NoSQL databases, including database design, optimization, and query performance tuning.
  5. Experience with cloud and web application development, API design, and database management.
  6. Knowledge of version control systems (e.g., Git) and continuous integration/continuous deployment (CI/CD) pipelines.
  7. Knowledge of cloud-native technologies and experience deploying and managing applications on cloud platforms (e.g., AWS, Azure, Google Cloud).
  8. Strong expertise in containerization, Kubernetes and Openstack orchestration.
  9. Familiarity with Ansible automation for infrastructure and configuration management.
  10. Familiar with Linux, kernel, shell code script.
  11. Familiar with software development standards and processes.
  12. Knowledge of DHCP protocols and experience managing IP address allocation.
  13. Proficiency in DNS configuration and troubleshooting.
  14. Experience with cloud-native storage solutions such as NFS, Rook, Ceph, MinIO, or similar technologies.
  15. Certification in Ansible, Python, Kubernetes or relevant technologies are a bonus.
  16. Deep Learning and HPC knowledge are a plus.


Job Segment: Cloud, Software Engineer, Embedded, Quality Assurance, Application Developer, Technology, Engineering