ptrck@nskm.xyz · +221 78 145 0048 · Blog · Mastodon · Code · Github
Software engineer with 15+ years of professional experience, passionate about free software, with hands-on devops experience across containers, CI/CD, and system administration. Former programming instructor and public speaker, committed to giving back through teaching and open source. I build things with Python, I break things with curiosity, and I try to leave every codebase better than I found it. Based in Dakar, Senegal.
Skills
| Operating Systems | GNU/Linux (Debian, Ubuntu & derivatives), Fedora, WSL2 |
| Programming languages | Python, SQL, Bash, Lisp, interested in Zig |
| Databases | Sqlite, Postgresql, DuckDb, Redis |
| Frameworks & Libraries | Django, Flask, SqlAlchemy, Mypy, Pandas, Numpy, Streamlit |
| Methodologies | Agile, Kanban, Pair programming, Devops, Lean, ITIL v4 |
| Toolbelt | Emacs, SSH, Gitlab CI, Pytest, Git, Make, AWS, K8s, Jenkins, Docker |
| Spoken languages | French, Lingala, English |
| Hobbies | Reading, Writing, Journaling, Cooking, Jump rope, Kettlebells, Inline skates, Swimming |
Experience
Institut Pasteur de Dakar
Software engineer · Dakar, Senegal · August 2023 - Present
- Developed REST APIs for the latest iteration of 4S, a syndromic surveillance system that monitors symptom clusters across West Africa to enable early detection of epidemics and public health events through real-time data analysis.
- Built REST APIs to streamline data retrieval from 96-well PCR plates (ELISA assays) for the immunology laboratory. Implemented patient data mapping systems and created data processing solutions including visualizations, reports, and analytical tables.
- Strengthened data security across the platform's six core services, closing gaps that could have exposed patient records or let unauthorized users access the system.
- Designed and built a unified alert system that reliably notifies health workers of urgent lab results and disease outbreaks by email, replacing inconsistent, service-by-service methods.
- Introduced safeguards against accidental, permanent loss of patient and clinical records, so critical health data can always be recovered.
- Standardized dependency tooling across all six backend services with uv, cutting environment setup time from roughly 2 minutes to under 10 seconds.
- Maintained user guides for every user role of the 4S system, authored with Pandoc & Quarto.
Dakar Institute of Technology
Programming instructor · Dakar, Senegal · Oct 2019 - Aug 2023
- Helped build what I believe will be one of the greatest programming schools in West Africa.
- Designed and developed curriculum materials tailored to learners with different skill levels.
- Delivered 30+ courses to 200+ scholars from all over Africa, covering Python programming, databases, version control, unit testing, and REST APIs.
- Assessed student progress through assignments, exams, workshops, and personal projects.
- Organized industry visits to connect students with real-world applications.
- Helped students with internship and job placement, in Senegal and Guinea.
Logilab
Software engineer · Remote · Oct 2018 - Oct 2021
- Updated and refreshed the technical documentation for the RQL package.
- Wrote and reviewed training materials (courses & exercises) for Logilab's training offerings.
- Conducted weekly pair programming and code review sessions with teammates.
- Added Python type annotations to the RQL package.
- Reviewed and migrated internal software components from Python 2 to Python 3 before the Python 2 sunsetting.
Brief.me
Software engineer · Remote · Feb 2018 - June 2018
- Authored technical documentation and provided training to end users.
- Integrated payment gateways into the brief.me and brief.eco web platforms.
- Optimized back-office performance: reduced database queries, extracted specific fields, improved response times.
- Handled system administration: web servers, SSL certificates, monitoring.
- Configured continuous deployment pipelines for all internal projects.
XCG Consulting
Software engineer · Remote · Feb 2017 - Jan 2018
- Designed and implemented feature experiments across the main Django projects, and containerized them with Docker to simplify and accelerate deployment.
- Integrated multiple third-party services (payment gateway, currency rates, monitoring) into in-house Django projects, while providing technical support to end users.
AfricaFilms.tv
Software engineer · Dakar, Senegal · 2011 - 2016
- Developed and maintained the movie catalog and DRM (Digital Rights Management) systems for a Video On Demand platform focused on African cinema — one of the first of its kind in Senegal.
- Built the payment gateway integration and the financial distribution engine handling revenue splitting between authors, film distributors, and the platform.
The project is no longer active.
Talks
- Ecole de Geomatique 2023 — Geomatics & Python: playing with spatial data, Universite du Sine Saloum, Kaolack, Senegal.
- PyCon Africa 2019 — Python Coroutines, Accra, Ghana. The first-ever pan-African Python conference. (schedule)
Free & Open Source Contributions
I think the ability to access, modify, and distribute software freely fosters innovation, collaboration, and knowledge sharing. Whenever I can, I try to contribute back:
- Pandas-stubs — Improved type annotations for several methods
- Piccolo Admin — Added translations and updated Github Actions test workflows
- Typeshed — Added type stubs
- RQL — Type annotations and documentation
- Healthsites.io — Bug fixes
Education
| Institut Superieur d'Informatique (ISI) — Master in Software Engineering, BAC+5 | Dakar, Senegal · 2010 |
With time, the things that once defined me have quietly lost their weight. The more I get older, the less I care about what's on this page and more about what I'm building next. If I also take into account the fact that large language models are rapidly replacing us all, I wonder whether it's still worth keeping an up to date resume. Nonetheless if you're still curious, the PDF version of this resume is available here. It is, at least, a very beautiful document to read.