Scientific Computing Python Developer (Summer Student Assistant)

 
Supervisor: Matthieu Simeoni (LCAV)
 
Contact: Matthieu Simeoni ([email protected])
 
Keywords: scientific computing, computational imaging,  GPU computing, 
inverse problems, convex optimisation
 
Description:  Full-time summer student assistantship (July 1st to August 31st) as a Python developer. The student (which must be currently studying at EPFL) will be expected to help with the development of Pycsou, a Python 3 package for solving large scale linear inverse problems. In particular, the student will be responsible of:
  1. Introducing support for Cupy and Dask arrays, allowing for GPU and out-of-core, distributed computations,
  2. Making Pycsou interoperable with the deep learning library PyTorch.
  3. Extending the package API by implementing new linear operators (in particular wavelet transforms), cost functionals and algorithms. 
  4. Improving/maintaining the package documentation.
  5. Developing new tutorials in the form of Jupyter notebooks. 
Desired Skills:  Numerical and Scientific computing with Python 3 on CPU/GPU. Good knowledge of the Python scientific packages (Numpy, Scipy) and possibly their clones for GPU or out-of-core/distributed computing (Cupy, Dask). Some knowledge of convex optimisation and inverse problems is a plus.
 
Salary: Fr. 24.00/ h (flexible number of hours)
 
Levels: Master (, possibly Bachelor if sufficient experience with Python) 
 
Sections: All
 
Deliverables: peer-reviewed Python code, documentation, Jupyter notebooks. 
 
Type of Work:  programming, package maintenance.
 
Location: Flexible (EPFL campus or remote)