Job Description
This job was posted over 30 days ago, so it has most likely closed. See newer jobs like it.
Written by AI from the job title and company, not by Magic, so some details may not match this job. The employer's own page has the real description.
Job Overview
The Software Engineer - Supercomputing Platform & Infrastructure at Magic will be integral in designing, implementing, and enhancing our advanced computing platforms. The role will primarily focus on optimizing supercomputing capabilities, developing robust infrastructure, and ensuring high performance and scalability. The engineer will collaborate with cross-functional teams to deliver innovative solutions for complex computational problems, maintaining a commitment to quality and efficiency throughout the development lifecycle.
Job Responsibilities
- Design, implement, and optimize software systems for supercomputing infrastructures.
- Collaborate with research scientists and engineers to translate computational requirements into technical solutions.
- Perform software testing, debugging, and profiling to ensure system efficacy and reliability.
- Develop tools and frameworks for automating supercomputing workloads and infrastructure management.
- Monitor system performance and troubleshoot issues as they arise to minimize downtime.
- Document development processes, code changes, and system architectures for future reference.
- Engage in code reviews and provide constructive feedback to peers to promote best practices in software development.
- Stay updated with the latest technological advancements and recommend improvements to current systems.
Qualifications
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- At least 3 years of experience in software development, particularly within high-performance computing (HPC) environments.
- Proficiency in programming languages such as C, C++, or Python.
- Experience with parallel computing frameworks and tools (e.g., MPI, OpenMP).
- Understanding of operating systems, particularly Linux, and system-level programming.
- Familiarity with cloud computing platforms and containerization technologies (e.g., Docker, Kubernetes) is a plus.
- Strong analytical and problem-solving skills with a keen attention to detail.
- Excellent communication and teamwork skills to collaborate effectively with diverse teams.
Technologies & Tools
This role utilizes a variety of technologies and tools including high-performance computing libraries, parallel programming environments, cloud services, and software development frameworks. Familiarity with tools like Git for version control and CI/CD pipelines will also be essential for maintaining efficient development workflows. Experience with profiling tools to measure performance metrics in a supercomputing context will be beneficial.
Ideal Candidates
The ideal candidates for this position will possess a passion for supercomputing and an eagerness to tackle challenging problems in a collaborative environment. They should demonstrate an inquisitive mindset and the ability to adapt quickly to evolving technologies. Strong ethical standards and a commitment to delivering high-quality work are essential, as well as the capacity to communicate complex ideas clearly to both technical and non-technical stakeholders. A proactive approach to learning and growth within the field is highly valued.
Most job openings for the size of the industry in September: professional and business services, 5.5 for every 100 jobs. Fewest: construction, 3.4. Compare industries →
View Similar Jobs
Similar jobs which you may be interested in. Typically using your existing skillset.