class: center, middle # Anthony SKORSKI ### Python developer since 2013 #### Developer since 2007 .contact[]
--- ### Competences .competence-graph[ .level_00.grid[] .level_10.grid[Beginner] .level_20.grid[Mild-level] .level_30.grid[Good] .level_40.grid[Expert] .competence[.label[Python] .bar.level_35[]] .competence[.label[POO] .bar.level_30[]] .competence[.label[Gitlab] .bar.level_30[]] .competence[.label[PostgreSQL] .bar.level_30[]] .competence[.label[Django] .bar.level_30[]] .competence[.label[DRF] .bar.level_25[]] .competence[.label[SqlAlchemy] .bar.level_25[]] .competence[.label[Git] .bar.level_25[]] .competence[.label[Linux] .bar.level_25[]] .competence[.label[Docker] .bar.level_25[]] .competence[.label[Flask] .bar.level_20[]] .competence[.label[Shell Script] .bar.level_20[]] .competence[.label[VueJs] .bar.level_20[]] .competence[.label[SvelteJs] .bar.level_20[]] .competence[.label[Jenkins] .bar.level_20[]] .competence[.label[Java] .bar.level_15[]] .competence[.label[C# .NET] .bar.level_15[]] .competence[.label[Go] .bar.level_15[]] ] .footer[Updated on September 2020] --- ### Schooling .diploma[ .title[Level III diploma of development]
.uk-equivalent[Diploma of Higher Education] .details[in **2006** at AFPA Pont-de-Claix, Pont-de-Claix, France] ] .diploma[ .title[Scientific baccalaureate]
.uk-equivalent[A Levels] .details[in **2000** at Camille COROT high school, Morestel, France] ] ### Languages .languages[ - **French**: - native language - **English**: - written: comfortable - verbal: improvable ] --- ## Significant professional experiences Following pages present professional experiences I consider relevant because of one or more of the following reasons: - I learned a lot - I loved the technical stack - The subject was interesting - It was challenging - It concerns techs that I would accept to work with --- name: experience layout: true #### professional experience --- .experience[ .title[.job[Backend Developper] for .society[Enygea]
.subtitle[from .date[02/2021] to .date[05/2021]] .stamp.mission[as freelance] .stamp.remote[] ] .description[Development of a client space for a sanitary rental society] .details[ .tasks[ - development of REST endpoints for the client app - data sync with client's ERP via existing REST endpoints - automatic tests writing - redaction of documentation ] .techs[ - `Python` - `PostgreSQL` - `Git` - `Django` - `Django Rest Framework` ] ] ] --- .experience[ .title[.job[Backend Developper] for .society[Cisco]
.subtitle[from .date[02/2020] to .date[09/2020] at .place[Villeurbanne, France]] .stamp.mission[as freelance] .stamp.remote[] ] .description[Development and maintenance of the backend of an industrial security application] .details[ .tasks[ - maintenance of existing REST endpoints - development of new REST endpoints - automatic tests writing - redaction of functional test-cases ] .techs[ - `Go` - `PostgreSQL` - `Git` - `Gitlab` ] ] ] --- .experience[ .title[.job[Industrialisation engineer] for .society[Forcity]
.subtitle[from .date[11/2017] to .date[05/2019] at .place[Lyon, France]]] .description[Processes setup and best practices promotion to improve maintainability and robustness of products] .details[ .tasks[ - awareness raising of models dev teams about test utility and best practices using `Pytest` + redaction of guidelines - code reviews using `Gitlab` and code improvement advices - code refactorings - automatic tests writing with `Pytest` - internal tools development (logging and charting of code-quality indicators, testing utils for database access, a tool to "flatten" JSON data from a `Postgres` JSONB field) - setup of continuous integration with `Gitlab CI` ] .techs[ - `Python 2 and 3` - `PostgreSQL` / `PostGIS` - `SqlAlchemy` - `Git` - `Linux` - `Grafana` - `Gitlab` - `Docker` - `Setuptools` ] ] ] --- .experience[ .title[.job[Web developer] for .society[Dev&Go]
.subtitle[from .date[11/2016] to .date[10/2017] at .place[Lyon, France]]] .description[Development of a community portal for people concerned with usage of their personal data] .details[ .tasks[ - maintenance and evolution of the portal (back with `Django`/`DRF` and front with `ReactJS`/`Redux`) - endpoints development for REST API based on `Django` and `DRF` - developement of front pages with `ReactJS`/`Redux` - automatic tests writing for the backend with `Pytest` - development of a geocoding API with database update API + frontend application for data visualisation and database update ] .techs[ - `Python 3` - `Django` / `Django Rest Framework` - `PostgreSQL` /`PostGIS` - `ReactJS` / `Redux` - `Leaflet` - `Linux` - `Rest API` - `Docker` ] ] ] --- .experience[ .title[.job[Quality engineer] for .society[CEA LETI]
.subtitle[from .date[07/2016] to .date[10/2016] at .place[Grenoble, France]] .stamp.mission[for Sogeti High Tech]] .description[Installation and configuration of a continuous integration environment (Jenkins) and rework of the development environment to make it more flexible and avoid duplicate build scripts] .details[ .tasks[ - Installation and configuration of `Jenkins` with multiple plugins - Rework of the build environment (mainly `Batch` scripts in directory trees to run `pyInstaller`) - Mutualisation of build scripts of several internal tools - Setup of automated build in `Jenkins` using mutualised scripts - Writing of automatic tests and integration in `Jenkins` for automatic run - Setup automatic documentation generation from docstrings with `Sphinx` and `Jenkins` - Setup of code quality checks with `pep8`, `pylint`; automated with `Jenkins` - Redaction of a comparison documentation between several test frameworkd (`unittest`, `pytest` and `nosetest`) ] .techs[ - `Python 3` - `Jenkins` - `PyInstaller` - `Linux` - `Windows` - `SVN` ] ] ] --- .experience[ .title[.job[Designer / Developer] for .society[SNCF]
.subtitle[from .date[01/2016] to .date[03/2016] at .place[Lyon, France]] .stamp.mission[for Sogeti High Tech]] .description[Development of a tool to translate hundreds of test configuration files for electronic cards testing machine to a new format] .details[ .tasks[ - Design of a data structure to handle test configurations - Development of a parser (with `PLY`) to extract test configurations from files - Development of a CLI tool to read files and translate them to the new format - Development of a GUI on top of the CLI using `TKinter` ] .techs[ - `Python 3` - `PLY` - `TKinter` ] ] ] --- .experience[ .title[.job[Designer / Developer] for .society[Alstom Transport]
.subtitle[from .date[05/2013] to .date[01/2016] at .place[Villeurbanne, France]] .stamp.mission[for Sogeti High Tech]] .description[Development and maintenance of an embedded application centralising maintenance data of the train it is installed on and send it to the ground servers] .details[ .tasks[ - functional and technical specification writing - development of brand new features, evolution of existings features, bug fixes - support to the validation team - functional tests sheets writing - automatic tests coding (unitary and functional) with `Pytest` - user manuals writing or/and updating ] .techs[ - `Python 2` - `Jenkins` - `SOAP web services` - `Linux` ] ] ] --- .experience[ .title[.job[Designer / Developer] for .society[Alstom Transport]
.subtitle[from .date[02/2013] to .date[03/2013] at .place[Villeurbanne, France]] .stamp.mission[for Sogeti High Tech]] .description[Development from scratch of a graphical utility to command an electronic-card-loading CLI tool] .details[ .tasks[ - design of the utility screens and technical specification writing - development of the application, supporting unicode (internationalisation) and configurable via a XML file using `Python 2` and `PySide` - unit tests coding with `Pytest` - test plan and test sheets writing - user manual writing ] .techs[ - `Python 2` - `PyInstaller` - `PySide` ] ] ] --- .experience[ .title[.job[Designer / Developer] for .society[France Telecom]
.subtitle[from .date[11/2009] to .date[03/2010] at .place[Meylan, France]] .stamp.mission[for Sogeti High Tech]] .description[Development from scratch of a graphical application to remotely monitor health of patients suffering from chronic pathologies] .details[ .tasks[ - design and development of the graphical interface with `SWING` - development of a plugin system using dependeancy injection with `Spring` - internationalisation of the application using property files ] .techs[ - `Java` - `SWING` - `Spring` - `Maven` ] ] ] --- .experience[ .title[.job[Designer / Developer] for .society[O-I Manufacturing]
.subtitle[from .date[02/2008] to .date[05/2009] at .place[Villeurbanne, France]] .stamp.mission[for Sogeti High Tech]] .description[Development and maintenance of a supervision system for glass-bottle factories] .details[ .tasks[ - developments and evolutions of screens for the graphical interface - developments and evolutions of stored procedures with `Transac-SQL` - developments and evolutions of reports with `Reporting Service` - development of charts with `ChartFX` - hardware and software setups in the factories - remote updates deployment with `ClickOnce` ] .techs[ - `C#` - `.NET Framework 2` - `SQL Server` - `Reporting Service` - `ClickOnce` ] ] ] --- layout: false ## Other professional experiences Following experiences will not be detailed because they did not provide any significant interest and because this CV is long enough. They are mentioned only to reassure potential recruiter which worry about gaps between the previously mentioned experiences. | period | society | description | main techs | | ------ | ------- | ----------- | ---------- | | 05/2016 - 06/2016 | Sogeti High Tech | modeling and animation of a 3D demonstrator for an automated charging station for drones | `Blender`, `Python 3` | | 04/2016 - 04/2016 | SAB | communication gateway between machines using different protocols (FOCAS and MODBUS) | `Python 3.4`, `cffi`, `umodbus` | | 03/2016 - 04/2016 | Sogeti High Tech | modelisation and texturing of robots | `Blender`, `Gimp`, `Inkscape` | | 05/2012 - 01/2013 | Alstom Transport | configuration of the passenger information system of tramways | mostly internal tools, `Lua`, `Flash` | | 06/2010 - 03/2012 | SNCF | maintenance and support for 6 "common technical tools" | `C`, `Java`, `Bash`, `UNIX`, `Linux` | | 03/2010 - 06/2010 | GTIE | realisation of a supervision for the alternative route of Avignon | `PC Vue`, `SQL` `Server`, `VBA` | | 09/2009 - 10/2009 | Alstom Transport | evolution of an embedded test program for an electronic rack | `C`, `QNX`, `Python` | | 08/2009 - 09/2009 | Sogeti High Tech | mock-up for a web-app to manage obsolete electronic components | `PHP`, `MySQL`, `Apache` | | 06/2009 - 08/2009 | Sogeti High Tech | proof of concept for a control-command application | `EPICS` | | 05/2007 - 12/2007 | Sogeti | miscellaneous missions for Groupama SI, Cap Gemini and Sogeti internals | `J2EE`, `Struts`, `Hibernate`, `C#`, `SQL`, `Oracle`, `AJAX` |