Badr - Développeur SCALA
Ref : 200530B001-
92150 SURESNES
-
Développeur, Consultant technique, Architecte (35 ans)
-
En portage salarial
PROFESSIONAL EXPERIENCE
11.2018 – Current
Scala Developer, Zeenea, Paris
This experience has been very enriching on several levels. Having joined the startup in its early stages, the
data catalog product was in its infancy. The first challenge for the dev team was to build a mature and
marketable product. It goes without saying that the stakes were enormous. Fortunately, being surrounded
by a development team that shares the same goal and good software development practices has allowed
us to achieve great things both technically and commercially.
It was also my first professional experience as a Scala Developer. Having used this language on personal
projects, it was an opportunity to apply my knowledge of the language to real business needs.
— Involvement in Back-end/Front-end development in feature team mode.
— Refactoring of the code base to an FP-like style.
— Setup of Scala design guidelines.
— Involvement in the refactoring process for the on-premise migration to aws.
— Knowledge sharing with the mob programming orga, mini-talks techs.
— Implementation of connectors (Bigquery, CloudStorage) for the collection of metadata.
Scala | Play Framework | Functional Programming | Cats | OrientDB | SBT | Cloud
10.2017 – 11.2018
Java Senior Developer, M6 GROUP, Neuilly sur Seine
My experience at M6 was a bit different, as I joined a dev team that had a broad scope of intervention on
several applications. It involved the development of new features for applications already in production or
the development of new apps from scratch. This unusual configuration meant that we had to be good at
our CI/CD processes to ensure the quality of our deliveries and reduce the MTTR (Mean time to repair).
For this need, we used classic tools such as Gitlab and Jenkins. Naturally, Groovy was the obvious choice
to implement our pipelines.
Quality also means good development practices. That's why I always put into practice all knowledge in
terms of clean architecture, testing strategies, and coding best practices.
And during this mission, I also developed an interest in functional programming, and I didn't hesitate to
share what I learned at the time with my colleagues.
— Development of new features in feature team mode.
— Sensitization to software craftsmanship among the team members.
— Capitalization on the existing apps with the aim of their modernization.
— Involvement in setting up CI/CD with gitlab and Jenkins.
— Realization of integration tests with FitNesse.
— Assisted and trained new developers.
JAVA | Spring | Angular | Gitlab | Jenkins | Spark Sql | Solr
4.2016 – 9.2018
Java Senior Developer, Tinubu Square, Issy Les moulineaux
Another project, another context. Tinubu is a software editor in the Finance sector. With their leading
product having already been in production for a few years, I joined the R&D team. part from developing
new features, one of the big challenges was the modernization of the legacy code base. This included
increasing the code coverage by unit tests in the first step, to be able to refactor it later in a serene way.
The modernization also concerned the build tool (introduction of maven), the service layer by introducing
Spring, and the front-end part which has seen a migration from the Service Side Rendering approach (JSP)
to Client Side Rendering (AngularJs).
— Development of new features in feature team mode.
— Modernization of legacy code.
Java 8 | Tomcat | JSP | Oracle | Saas | AngularJS | Maven
1.2014 – 4.2016
Java Developer, ICE Group, AlfortVille
ICE is an industrial company that operates in the field of electric power transmission and produces control
systems and protection of electrical networks. So far from the soft world.
When I joined the R&D department, I had to implement a Java/Swt heavy client application that allowed
the configuration of ICE electrical boxes via the RS-232 protocol.
This was my first real professional experience, which was very enlightening, especially in terms of code
quality, maintainability and scalability. Notions that you don't necessarily see at school but which are
essential when you make software.
— Development of new features in feature team mode.
— Implementation of the RS-232 communication protocol with the Java RXTX.
Java | Swt | Eclipse RCP | RXTX library
TECHNOLOGIES & BEST PRACTISES
Scala, Play Framework, Functional Programming, Cats, Doobie, Clean architecture, Software
craftsmanship, Java, Spring, TDD, Typescript, Angular, Git.
MISCELLANEOUS
04.2019
Scala IO 2019, I did a talk in french “Scala bad practices, ou comment garder son emploi à vie”
2020
Gospeak.io, I made a few contributions to this OSS Scala FP project.
EDUCATION
2013
University of Limoges, Limoges
Master’s 2 – Information Security and Cryptology (CRYPTIS).
2013
3IL Engineering School, Limoges
Master degree in computer science.
2010
Mohammed V University, Rabat
Bachelor degree in mathematics and computer science.