Pablo Vergés
Experimental physicist experienced in software development.
Personal details
- Address
- Pablo Vergés
Husmatt 4
CH-5405 Baden - pablo.verges@gmail.com
- Phone Number
- +41 79 850 79 76
- Nationality
- Swiss / Spanish
Work Experience
Software Developement
DECTRIS Ltd.
Täfernweg 1, 5405 Baden, 2018 to present - 2 years 1 month
Business software landscape: I currently contribute to shape the business software landscape to allow DECTRIS to adapt to our current and future needs. This includes disentagling the current systems, defining resilient interfaces and improving our business processes.
Manufacturing execution system prototype: To understand the needs of our manufacturing, I prototyped a user interface for a manufacturing execution system. It allows operators to pick tasks according to the specified work place and execute it. It communicates with a backend via gRPC.
Detector system user interface: I rewrote the user interface for one of our most important products. It communicates with a backend via gRPC and allows users to get system status information and getting as well as setting the system's configuration. The software structure is used as the new standard for further inhouse developed web user interfaces.
Detector system calibration: I helped rewriting the system calibration - one of the most challengings steps of our production - using domain driven design. I interpreted the old code, translated it to psuedo code to describe the procedure to the team and implemented parts of the new system calibration. I also run the system calibration during the development to test the results.
Hangouts Bitbucket service: I built a service to send messages to specified Google Hangouts channels. It receives updates from the Bitbucket server on several repository events and passes relevant information to the configured hangouts channel.
Detector assembly test: I collaborate in the development of a framework to test our detector's assembly. It allows to automatically detect missing connections or defects in the assembled detector.
Git trainings: I prepare trainings, in which the functionality and internals of Git are discussed, to improve the quality of our collaboration.
Used technologies: Python, py.test, Cypress, Vue.js, Vuex, Vue Router, gRPC, Flask, marshmallow, Git, Bitbucket, pip, Bazel, Ansible, requests, Docker, Helm, Drone, Buildkite
Used methodologies: BDD, TDD, pair programming, mob programming, pike & stabilize, walk a mmile, DDD, event storming
4teamwork AG
Dammweg 9, 3013 Bern, 2017 to 2018 - 1 year 7 months
Boilerplate for Django projects: I build and maintain the boilerplate for Django projects. It allows configurable development, build, test and production environments.
See: https://github.com/4teamwork/bobtemplates.4teamwork
Meeting assistance webapplication: In a team of three developers, we are building an application to digitize meetings. It allows users to preview the meetings’ documents and add comments or notes.
Business administration software - opengever.core: I collaborate in the development of the company’s business administration software. To contribute to the product, the GitHub Flow workflow is required and test driven development was adopted.
See: https://github.com/4teamwork/opengever.core
Event calendar for stadt.winterthur.ch: I developed and integrated an event calendar into Winterthur’s website. It allows anonymous users to propose events and simplifies editor’s tasks.
See: Agenda Verkehrsgarten, Sport Veranstaltungskalender
Inspection administration and reporting software: In a team of two, we build an application to assist inspectors in their operative and reporting tasks. External data imports simplify inspection management tasks and inspection evaluation reduce reporting overhead.
Substitution platform - einzelvertretungen-zh.ch: In a team of two, we built an application to permit priests to specify available dates, their preferred services and simplifies the search of possible substitutes in the case of a drop out.
Used technologies: Python, Django, py.test, PostgreSQL, Django REST framework, HTML, CSS, SCSS, rules, Plone, Git, GitHub, pip, venv, buildout, Javascript, jQuery, Vue.js, vuetify, axios, webpack, Solr, GitLab, requests, Docker, Zeep
Adfinis SyGroup AG
Giessereiweg 5, 3007 Bern - 2015 to 2016 - 8 months
Server monitoring, alarming and reporting system - SyMonitoring: I helped implementing the evaluation for the outage reports and wrote the visualisation of the monitored infrastructure’s current status.
OpenOffice patch: I wrote a patch for OpenOffice to prevent a confusing warning message, when a file is accessed, but its content was not altered.
Used technologies: PHP, Javascript, jQuery, vis.js, Python, MySQL, Django, Vagrant, Git, GitLab, C++
Gonnado AG
Lorrainestrasse 14, 3013 Bern - 2010 - 9 months
I helped designing, implementing and maintaining Gonnado's social network. I also wrote various webcrawlers to provide data for the platform.
Used technologies: Python, Django, Scrapy, Javascript, jQuery, PostgreSQL, PostGIS, Git, HTML, CSS
Bitfrucht Media AG
Industriepark 11, 8610 Uster - 2007 - 9 months
During my internship I developed a content management system and used it to build the websites of several customers.
See: Ecoline Systems
Used technologies: PHP, Javascript, TinyMCE, MySQL, HTML, CSS
Teaching
University of Bern
Sidlerstrasse 5, 3012 Bern - 2015 to 2016 - 6 months
I assisted students of the faculty of medicine on a practical course on diffraction of light on a grating, the light spectrum and atom model by Nils Bohr.
Freies Gymnasium Bern
Beaulieustrasse 55, 3012 Bern - 2013 to 2014 - 3 months
I was the substitute teacher in mathematics for two classes during three months. One of the classes was introduced to vector geometry, the other into programming with Python.
Kantonsschule Reussbühl
Ruopigenstrasse 40, 6015 Luzern - 2013 - 1 month
I was the substitute teacher in mathematics for two school classes during a month. The discussed subjects were geometry and trigonometry.
École profesionnelle artisanale et industrielle de Fribourg
Derrière-les-Remparts 5, 1700 Fribourg - 2012 to 2013 - 1 year
I gave a supporting course on mathematics in French and German to prepare the qualifying examination of the Berufsmaturitätsschule.
Tour Guide
Bern Historical Museum
Helvetiaplatz 5, 3005 Bern - 2016 to present
I guide groups through the Einstein exhibition in German, French and English. I also present experiments related to Einstein's work in a yearly event dedicated to him.
Sinnvoll Reisen GmbH
2005 to 2015 - 10 years
I guided Spanish speaking groups through Switzerland and southern Germany during Sinnvoll Reisen GmbH's active years.
Education
MSc in Physics
Experimental Physics - University of Bern - 2014 to 2016 - 2 years
Thesis: SiPM Gain calibration for the scintillating Cosmic Ray Tracker
I wrote a set of applications and used them to collect, evaluate and display data from the cosmic ray tracker panels. These tools allow automatising the SiPM gain calibration process. I also helped producing the panels in the workshop.
See: Master Thesis, CalibRaTe, Master Diploma, Master Program
Used technologies: Python, C, C++, ZeroMQ, Jupyter, Plotly, LaTeX, Make, ROOT, Kibana, Docker, InfluxDB, Matlab / Octave, Mathematica, Gnuplot
BSc in Physics
With a minor in mathematics - University of Bern - 2010 to 2014 - 4 years
Thesis: Statistische Interpretation von Suchergebnissen im ATLAS Experiment
I wrote a set of scripts to run the computational analysis of the test statistics with varying input parameters. The results where then compared with the expected results to evaluate the computational analysis software.
Used technologies: Bash, Python, LaTeX, Matlab / Octave, Mathematica, Gnuplot
Computer Science
Hochschule für Technik Rapperswil - 2007 to 2008
École polytechnique fédérale de Lausanne - 2004 to 2006
Maturität
Gymnasium Interlaken - 2001 to 2004
Advanced Trainings
Machine Learning - Stanford University / Coursera - 2016
Python Programming - Wesleyan University - 2017
Skills and competences
Soft skills
I am an active and empathetic listener. Understanding my counterparts' needs is critical to me. I attended a lecture on communication for engineers at the HSR. I enjoy being a team player and supporting others solving tasks.
Programming
Python is my weapon of choice. I know its ecosystem and feel comfortable using its tools (venv, pip, unittest / py.test, jupyter, pdb, logging, …). I also use C, C++, Javascript or Ruby where required. In general, I enjoy learning new programming languages, frameworks and libraries, since they often come with useful, new concepts. I’m very interested in service oriented architecture since the fist time I used ZeroMQ.
Application development
I know how to develop, build and deploy and applications using continuous integration and deployment techniques. Making applications configurable to deploy then in many different environments using the same codebase is easy to me. I also learnt managing and isolating application dependencies to prevent dependency version conflicts.
Problem solving abilities and analytical skills
I like tackling and solving complex problems using different techniques to find the most elegant or most pragmatic solution. I can read and review other’s program code. I also evaluate third party applications and libraries to foresee complications before using them.
Documentation
I document my work according to the requirements. I can create user manuals using Sphinx and used Swagger to create automatised API documentations. Most of my personal projects come along with a markdown readme. I use Git for documenting changes and code comments for complex snippets of code.
Systems
I feel comfortable using the shell (on Linux and macOS). I have some experience configuring http servers and databases. I also worked with puppet, docker and vagrant and I am aware of technologies like packer, terraform. I am very interested in the DevOps culture.
Extracurricular activities
I spend most of my free time climbing.