Thomas Wuillemin
Verified Expert in Engineering
Back-end Developer
Limassol, Cyprus
Toptal member since October 2, 2021
Thomas is a seasoned senior back-end developer and architect. In the past twenty years, he had the opportunity to work in various environments. His experience allows him to offer the most suitable solution matching business requirements, robustness expectations, and stakeholders' timelines. Coming from the Java world, Thomas nonetheless favors a pragmatic approach regarding technical decisions.
Portfolio
Experience
- Java - 20 years
- Computer Science - 20 years
- SQL - 20 years
- Database Design - 10 years
- NoSQL - 6 years
- Kotlin - 4 years
- Go - 3 years
- Python - 3 years
Availability
Preferred Environment
Java, Kotlin, Go, SQL, NoSQL, PostgreSQL, MongoDB
The most amazing...
...achievement I've accomplished was leading a team that was in charge of building a complete new back end that slashed data access time from hours to seconds.
Work Experience
JavaServer Faces Developer
RINS
- Maintained and upgraded an online application critical for the client's daily activity.
- Enhanced performances in the most common parts by a factor of 5 to 10.
- Migrated over 15-year-old application features to more modern technological choices (reporting, database, etc.).
Senior Back-end Developer
UxxU
- Migrated the database from Firebase with NoSQL to SQL with PostgreSQL, reducing infrastructure costs and running real-time BI.
- Imported numerous external data in the core database, some coming from structured sources and others from free-form sources.
- Developed tools to support the data-management team activity by providing insights about data issues and business-related inconsistencies.
Back-end Team Leader
Client Under NDA
- Developed a complete back end to support the company's main product according to the pre-sale team's expectations.
- Designed the back end as a microservice architecture and managed these services deployed in multiple countries.
- Added missing cryptographic functions in Go, porting from BouncyCastle with Java to idiomatic Go.
- Collaborated closely with the R&D team to integrate their prototypes without compromising the robustness of the system.
- Led the back-end development team composed of two intermediate developers and myself.
Senior Back-end Developer
XM
- Tracked and fixed rough edges in the company's back end. The back end is a monolith supporting four million users and millions of daily transactions.
- Added automated and on-demand reporting on financial assets to support the dealers' office.
- Migrated stand-alone tools such as the VIP card into the back end, including data migration.
- Mentored and validated the work of four junior/intermediate co-workers and offered numerous short training to the entire team of 16 people on advanced topics during the weekly meetings.
Back-end Team Leader
VizExplorer
- Developed the new core data server from whiteboard to production, supporting all other company's tools.
- Lowered the data access time from hours to seconds—or even milliseconds—compared to the previous data server generation due to clever use of smart caching and immutable data workflow.
- Cooperated with the client configuration teams to ensure a more straightforward configuration of the data server to match each client's requirements, allowing client configuration teams to build a new configuration in hours instead of sometimes weeks.
- Managed the team of back-end developers with up to six people, owning planning organization and animating the daily and bi-weekly meetings. I also directly managed two junior developers, performing their yearly reviews.
Senior Mobile Developer
Haibu
- Developed an Android application targeted at employees in mobile phone stores. The application allowed the entire sales workflow to be performed directly with the client in the shop without having to sit at a counter.
- Integrated the application with the company's existing services: CRM, ERP, Stocks, and more.
- Hardened the application so that it was usable even without a network connection.
- Mentored and managed two developers, one dedicated to security and the other one to the UX.
Senior Back-end Developer
Emergya
- Restored the sources and added new features to the GIS portal of the Chilean Department of Energy needed to deal with changes in the legal framework for energy producers. The challenge was finding the original sources and build them.
- Created a web application for the National Office of Mining in Chile, allowing private users to declare and follow their mining exploration permits.
- Upgraded the set of tools—C programs—for computing the VAT used by the Taxes Department of Chile. Some of these have been left unchanged for more than ten years. The compiler version was updated, and sources were deeply cleaned.
- Managed and mentored a team of three developers. Emotionally guided the team, particularly throughout the first listed project due to its overwhelming complexity for junior developers.
Senior Full-stack Developer
Innovand.io
- Developed a web application to connect dentists and patients looking for a dentist in the region of Santiago de Chile. The application took care of specialty, planning, and appointments.
- Built a service and its database allowing a company to quickly and easily generates invoices in Chile. The need was due to a complete change of the legal framework involving a particular data format.
- Mentored co-workers on software architecture and design.
Infrastructure Project Manager
Euriware
- Supervised and reported the progress of the infrastructure projects portfolio for a major client. The portfolio had between 70 and 100 projects.
- Prepared and rolled out a major upgrade of the point-of-sale software for a client covering 310 stores worldwide.
- Virtualized the SAP infrastructure of a new client and migrated it from its on-premise architecture to our Tier 3+ datacenter.
Information System Manager
Areva Mining Business Unit
- Supervised and optimized the set of software used by the business services ensuring renewal and internal billing with a yearly budget of around two million euros.
- Designed, contracted, and deployed the so-called mining information system, allowing all services to share information around an everyday basis of data and software with a budget of around four million euros.
- Enhanced data security by counseling end users and helping them to define their requirements in confidentiality, availability, and integrity.
Project Manager
Euriware
- Integrated the COTS Mega GRC to the AREVA internal audit's profit replacing their previous in-house support tool. The deployment included the migration of historical data.
- Helped, as an interoperability expert, to define the master plan for the integration of various information systems within means of France’s CBRN passive defense.
- Created a method for managing interoperability between France’s Ministry of Defense information systems using the ebXML norm from UN/CEFACT. I led the project team of two methodological experts and three developers.
- Conceived, managed, and deployed the project GRANITE targeted to process military intelligence. During this 2-year project, I led the development team consisting of up to 18 people.
Experience
VizApp
The company used an existing data server, but it could not match the requirements from the BI tools teams, and it was neither possible to make it evolve smoothly.
Besides leading the team that built the solution, I designed—from the drawing board—the VizApp data server to handle the following requirements:
- Modular to be adaptable to each customer with a microlith architecture
- Fast data delivery: As some queries in raw client data may take a few hours we added a caching layer—in fact, a tree of dependent caches— scheduled and security-aware
- Security aware, each customer had its own security rules, so a very configurable solution to accommodate almost any case. Also, we included a security-explanatory service to help teams perform the configuration, understanding the impact of their security rules.
- Modern technological stack: Java and Spring Boot.
GRANITE NG
GRANITE was built as an integrated suite of tools on top of a SQL database. Although this was SQL-based, users' data were presented as objects, and the business data model included inheritance. The main tools of the application were the data visualization tools offering users multi-dimension analysis such as geographical (GIS) and temporal, causal (exploration of relations in the data's graph).
The primary hard point of the project was that the software was to be used (and was used!) in the field by small remote teams without IT support or even basic infrastructure.
The critical success factor was the deep involvement of end users in all project stages, from the first mockups up to QA. Some details may be too small to fit in a public contract but may strongly impact the usability of the final product and its acceptance.
I was the technical leader on the project, and I was also personally in charge of the interoperability tool.
Migration from Firebase to SQL
Used this way, Firebase has limitations such as no advanced query (hence no real BI), orphaned data, etc. Moreover, Firebase is invoiced by access (read/write of an object), and when the database stores millions of objects, prices tend to rise.
My work was:
- Make tools to analyze existing data models, in particular historical data.
- Detect inconsistencies and orphans and, in relation with the data-management team, either create an automatic fix, if possible or provide an easy way to fix them manually.
- From the analysis, create a standard SQL model that can host the data (the final model was around 156 tables).
- Make a migration tool.
- Update the back end.
An important part of my work was the coordination between the data management team, the business owner, and the UI team.
The migration was done in 2 hours and was a complete success matching all the objectives. In the long run, the client was very satisfied with the outcomes.
Education
Master's Degree in Political Science
University Jean Moulin — Lyon III - Lyon, France
Engineer's Degree in Computer Science
3IL - Limoges, France
Bachelor's Degree in Industrial Process Regulation
ISAII - Arles, France
Certifications
MCP Artificial Intelligence
Microsoft
Programming with Google Go Specialization
UC Irvine
Deep Learning
DeepLearning.ai
Machine Learning
Stanford University
VMware vSphere 5
VMware
ITIL V3 Foundation
Exin
Skills
Libraries/APIs
Node.js
Tools
IntelliJ IDEA, GoLand, GIS, Apache Maven, DataGrip, Jira, VMware, Microsoft PowerPoint, Microsoft Word, Microsoft Excel, Apache Tomcat
Languages
Java, Kotlin, SQL, Go, C, TypeScript, Python, Ruby, C++
Frameworks
Spring Boot, JavaServer Faces, Ruby on Rails 4, Spring, Hibernate
Paradigms
Database Design, REST
Storage
RDBMS, NoSQL, PostgreSQL, H2, MongoDB, Google Cloud, Amazon S3 (AWS S3)
Platforms
Windows, Linux, Firebase, Docker, Oracle, Android, Kubernetes, Amazon Web Services (AWS), Amazon EC2
Other
Computer Science, Back-end, Architecture, Team Leadership, Security, Industrial IT, Machine Learning, Artificial Intelligence (AI), Virtualization, ITIL V3 Foundation Certified, RFPs, Request for Information (RFI), Product Licensing, Amazon RDS, Amazon Route 53
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring