Artem Pulkin

[ɐrˈtsʲɡm]

πŸ“§ gpulkin@gmail.com

🌐 pulk.in

🏠 Amsterdam NL πŸ‡³πŸ‡±

Expertise

Software development, machine learning, data, scientific research

Education πŸŽ“

2012-2017 Docteur Γ¨s Sciences EPFL in physics Lausanne CH πŸ‡¨πŸ‡­ Specialized on: numerical electronic structure, quantum simulations. Thesis: Electronic Transport in 2D Materials with Strong Spin-orbit Coupling (03/2017); supervisor: Oleg Yazyev

2010-2012 Master of Science Chalmers in applied physics GΓΆteborg SE πŸ‡ΈπŸ‡ͺ Thesis: Spintromechanical Aspects of Charge Transport in Nanostructures (06/2012); supervisor: Robert Shekhter

2006-2010 B.Sc. in Physics cum laude V.N. Karazin’s State University Kharkiv UA πŸ‡ΊπŸ‡¦

Training

Coursera: Machine Learning from Stanford University

Experience πŸ”¬

Apr'19-Apr'22 Engineering scientific software @ QuTech TU Delft πŸ‡³πŸ‡±

I led development of an open-source ML research software in python for material properties miniff: formulated tech requirements and designed the software; organized a team of 2-4 people with different backgrounds towards Agile workflow and priority goals; optimized and scaled the code; prepared, released and integrated the package for running in distributed HPC environment; attracted users and coordinated various parties (scientists, HPC platform, industry users).

Jul'17-Mar'19 Research and engineering @ Caltech US πŸ‡ΊπŸ‡Έ

Performed R&D in numerical computer simulations of properties of novel materials. As a part of a bigger team (10-20 team members) implemented new functionality in the open-source python software project pyscf; contributed to strategic decisions and assigning priorities; refactored, prepared unit tests and documentation.

Oct'12-Apr'17 Pursued PhD @ EPFL CH πŸ‡¨πŸ‡­

Jun'12-Aug'12 Contributed to scientific research @ Seoul National University, KR πŸ‡°πŸ‡·

Aug'10-Jun'12 Performed scientific research @ Chalmers, SE πŸ‡ΈπŸ‡ͺ

Projects

More on github/pulkin

miniff miniff https://gitlab.kwant-project.org/qt/miniff

A machine learning project in python to simulate molecular dynamics with classical force fields. Combines the power of cython, numpy and torch to deliver maximal performance in a high-quality python code. Demonstrates my passion for using cython when it comes to solving bottlenecks.

pyscf pyscf https://github.com/pyscf/pyscf

A large collaboration across universities and public companies towards high-performance quantum chemistry in python. Implemented with numpy and pure-C. Proud of having worked with these people.

pyteleport pyteleport https://github.com/pulkin/pyteleport

My experiment in teleporting python runtimes from within the stack. Uses cPython bytecode (and relies on dill for object serialization). Integrates with AWS EC2. A sole project and idea I am very proud of.

pycoordinates https://github.com/pulkin/dfttools

A simple computational package for basis transformations. Implemented with python, numpy and cython. One of my cleanest code where I discovered the power of python build.

micropython https://github.com/pulkin/micropython

A micropython (python dialect) port to a popular cellular network module A9G written in C. Enjoyed supporting others in their hardware projects while digging into embedded firmware design.

Awards πŸ†

postgraduate πŸ’° Personal Swiss NSF grant to study abroad 80k CHF, 18 months, postdoctoral level (Early Postdoc.Mobility) grant P2ELP2_175281

πŸ’° Personal computing time at national supercomputing facilities (SURF NL) Approximate equivalent of 26k EUR, 24 months project 45873

graduate πŸ₯‡ Olympiad in Physics for University Students (national in Ukraine) – first prize

πŸ… Youth Physicists Tournament (national in Ukraine, team) – multiple prizes

πŸ₯‡ Open Olympiad in Applied Physics (MIPT Moscow) – first prize

πŸ’° Kharkiv City Mayor and Kharkiv State Governor scholarships for gifted youth

high school πŸ₯‡ Dozens of prizes in physics and informatics (olympiads, student projects; top-10 and top-1 in national competitions)

πŸ’° Multiple scholarships

Skills πŸ”¨

Software development in 🐍 Python (7 years): scientific stack: numpy, torch, matplotlib; notebooks; HPC and parallel/distributed/concurrent computing (MPI, OpenMP, multiprocessing, async); performance-driven development with C and cython; styling, testing, documenting, packaging; other: FastAPI, django, OpenCV, OpenCL, bytecode.

C/C++: HPC and parallel environments (MPI, OpenMP); Lapack; embedded platforms; interfacing other languages; decompiling and reverse-engineering.

Other: β˜• Java, Fortran, Julia, Javascript, Matlab.

Infrastructure: git, CI/CD (Travis, Gitlab-CI, Azure pipelines), docker, HPC, AWS (EC2, S3).

IDEs: Pycharm, vim.

Machine learning: supervised learning (DNN, linear fits, logistic fits, SVM); unsupervised learning (PCA/SVD, K-means, anomaly detection); dataset generation, feature extraction, adversarial models.

Soft skills: critical analysis, problem solving, communicating (organizing discussions, presenting, paper/grant/documentation writing), full-cycle project management (idea - funding - implementation - reporting), supervision.

Languages

English (prof), Ukrainian (mother), Russian, French (basic), Dutch (basic).

Hobbies

Sports, ✈ travels, cross-stitching, soldering, πŸ”’ lock picking, πŸ•ΉοΈ board and video games, open-source projects.