BRIGHTSKIES

Senior HPC Engineer

Date Posted

April 29

Work Type

-

Job Level

SENIOR

Job Location

🇪🇬 Egypt

Responsibilities/Duties:


  • Develop and optimize high-performance computing (HPC) software applications tailored for specific scientific or engineering domains.
  • Designs new software tools, and refactors existing tools, to take advantage of object-oriented structures and software architecting best practices.
  • Develops and implements algorithms which exploit high performance compute clusters.
  • Collaborate with domain scientists and researchers to understand their computational needs and translate them into efficient software solutions, ensuring compatibility with existing HPC infrastructure and workflows.
  • Works both independently and on small teams; interacts with program office and global customers.
  • Participate in code reviews, team meetings, and technical discussions, contributing expertise and insights to enhance the overall quality and effectiveness of HPC software development efforts.
  • Contributes to technical reports, user documentation, regular status reports, and other presentations to disseminate findings, guidance, and technical information to as wide an audience as possible.
  • Guides and mentors junior engineers, offering technical support and guidance.
  • Available to travel according to business needs, including attending conferences, workshops, or visiting client sites to provide technical expertise, support, and training as necessary.



Requirements:


  • B.Eng. Degree in Computer Engineering, Computer Science, or Related Discipline.
  • 3+ years of experience as a Software Engineer
  • High proficiency in C and/or C++ programming language.
  • Proficiency in one or more of the popular scripting languages such as Python, Julia, or R.
  • Proficiency in one or more of the parallel libraries/languages such as MPI, OpenMP, OneAPI and CUDA.
  • Good knowledge of version control.
  • Fair knowledge of CI/CD tools.
  • Basic knowledge of Containers.
  • Knowledge in optimization techniques and frameworks as well as distribution and parallelization.
  • Basic knowledge in one or more of the following:

Hardware Architecture

High Performance Computing

  • Knowledge in one of the following areas is a plus:

Numerical solvers and/or numerical methods e.g. Finite Difference/Element/Volume Method

Data Science

  • Deep understanding of software design, programming techniques, and algorithms.
  • Deep understanding of software architecture
  • Decent level work experience in developing algorithms.
  • Excellent communication skills and experience working in a collaborative environment.
  • Excellent Command in English written & verbal.

© Copyright 2023. All Rights Reserved by Hisham Elmorsi.

the99hired@gmail.com