François Bonin, Developer in Paris, France
François is available for hire
Hire François

François Bonin

Verified Expert  in Engineering

Software Developer

Location
Paris, France
Toptal Member Since
September 16, 2018

Since 2000, François has been building software systems with various technologies. After having been awarded the Microsoft MVP title four years in a row for his deep knowledge of the .NET platform, he discovered a passion for building and monitoring distributed systems as an Amazon senior engineer. During that time, he worked with teams across continents and developed an affinity for cloud software.

Portfolio

WeChop
TensorFlow, Microsoft Bot Framework, Angular, Chef, iOS, Android, .NET...
AppDynamics
Service, Profiling, C++, Windows Services, .NET, Distributed Systems, C#.NET...
Amazon.com
Microservices, Google Guice, Spring, Amazon DynamoDB...

Experience

Availability

Part-time

Preferred Environment

Git, IntelliJ IDEA, Visual Studio, Linux, Windows

The most amazing...

...design I’ve created was for an automated enterprise bus that interoperated hundreds of services in various styles, data formats, and protocols with no coding.

Work Experience

Lead Developer

2017 - 2020
WeChop
  • Built and maintained a distributed system to support eCommerce and the delivery vehicle routing operations.
  • Constructed a communication infrastructure on top of Telegram bots, using the Microsoft Bot framework.
  • Wrote a recommendation engine for customers of the eCommerce engine, using TensorFlow. Coded an implementation of a vehicle routing and scheduling heuristic.
  • Plugged in hand-refined SQL queries into Amazon QuickSight to provide business intelligence to the operations management.
  • Managed the continuous delivery ecosystem of the company.
  • Architected and coded the entire system (mobile application and back-end microservices) for a food-delivery and courier-tracking application.
Technologies: TensorFlow, Microsoft Bot Framework, Angular, Chef, iOS, Android, .NET, Distributed Systems, C#.NET, C#, MySQL, Unit Testing, REST, Software Architecture, Architecture, AWS Lambda, Localization, Amazon Web Services (AWS), SQL, SOLID Principles, MVC Design, REST APIs, Amazon CloudWatch, Lambda Functions, Serverless, Serverless Architecture, Solution Architecture, Docker, React, Third-party Integration, .NET 4, Web API, Model View Controller (MVC), jQuery, SQL Server 2016, Amazon DynamoDB, Amazon API Gateway, Terraform, CI/CD Pipelines, Spring, Git, Continuous Integration (CI), APIs, Integration Testing, Bash Script, Full-stack Development, Back-end, API Integration, TypeScript, Redis, Cryptography, SQL Server 2012, LINQ, FTP, FTP Servers, Entity Framework, Performance, Integration, RESTful Services, Webhooks, ASP.NET, Blazor, CSS3, Data Processing, DevOps, Scalable Application, Scalable Architecture, Cloud, Full-stack, Front-end, Scheduling, GitHub, Security Design, Kubernetes, Software Design, Leadership, Scalability, Google Cloud Platform (GCP), Agile, Google Cloud, Data Privacy, Cybersecurity, CTO, AWS Cloud Architecture, Technical Architecture, Technical Leadership, .NET 6, RESTful Microservices, Software Engineering, SQL Server 2017, Windows Server 2016, Payment APIs, Online Payments, API Documentation, Technical Writing, Dapper, Entity Framework Core, OAuth, Security, ASP.NET MVC, Continuous Delivery (CD), Data Pipelines, API Design, API/Services Architecture

Principal Engineer

2015 - 2016
AppDynamics
  • Defined and oversaw the end product's features (for the .NET platform).
  • Wrote and maintained a Windows service that performed just-in-time IL injections into applications.
  • Built tools to measure the performance overhead of monitoring agents.
  • Designed and built a network-performance-monitoring system that intercepts socket-based events, compiles statistics, and transmits them to a collection server.
  • Maintained a Java-to-C# translation tool to facilitate the porting of existing features between platforms.
Technologies: Service, Profiling, C++, Windows Services, .NET, Distributed Systems, C#.NET, C#, Unit Testing, .NET Core, Software Architecture, Azure, SOLID Principles, Docker, MongoDB, Architecture, Third-party Integration, Visual Studio, .NET 4, Node.js, PostgreSQL, CI/CD Pipelines, Python, Java, Git, Continuous Integration (CI), Integration Testing, Java 11, JUnit, Mockito, Back-end, API Integration, TypeScript, Redis, SQL Server 2012, Win32, LINQ, Win32 API, Entity Framework, Performance, Webhooks, Windows Server, Data Processing, DLL, DevOps, Windows Presentation Foundation (WPF), GitHub, Kubernetes, Software Design, Leadership, Scalability, Agile, Technical Architecture, Technical Leadership, RESTful Microservices, Software Engineering, SQL Server 2017, API Documentation, Technical Writing, Entity Framework Core, Multitenancy, SaaS Design, Continuous Delivery (CD), API Design, API/Services Architecture

Senior Software Engineer

2011 - 2015
Amazon.com
  • Designed and led the teams that built and operated large-scale, Java-distributed systems using message queues, NoSQL databases, autoscaling, and decoupled architectures.
  • Architected cloud-based workflow systems with integrated compensation patterns.
  • Built a load-testing, Python-based solution for web services.
  • Designed and built a service-oriented, architecture-based model for the interoperation of technologically disparate services across the company. Configuration of that service was done using an XML-based, service-definition language.
  • Architected and built an entirely automated enterprise service bus for distributed services.
  • Mentored developers in the use of professional software-development methodologies and tools: continuous deployment, automated testing, instrumentation, and monitoring.
Technologies: Microservices, Google Guice, Spring, Amazon DynamoDB, Amazon Simple Queue Service (SQS), Amazon EC2, Amazon S3 (AWS S3), REST, Service-oriented Architecture (SOA), Cloud Architecture, Algorithms, Distributed Systems, Java, Unit Testing, Architecture, Software Architecture, Software Development Lifecycle (SDLC), AWS Lambda, Localization, Amazon Web Services (AWS), AWS Cloud Architecture, SQL, SOAP, SOLID Principles, REST APIs, Amazon CloudWatch, Lambda Functions, Serverless, Serverless Architecture, Solution Architecture, Third-party Integration, Web API, Model View Controller (MVC), jQuery, SQL Server 2016, Node.js, Amazon API Gateway, CI/CD Pipelines, Python, Git, Continuous Integration (CI), APIs, Integration Testing, JUnit, Mockito, Bash Script, Full-stack Development, Back-end, API Integration, C++, FTP, FTP Servers, Performance, Integration, RESTful Services, Webhooks, CSS3, Data Processing, DevOps, Scalable Application, Scalable Architecture, Cloud, Full-stack, Front-end, Windows Presentation Foundation (WPF), AWS Fargate, Security Design, Software Design, Leadership, Scalability, Agile, Artificial Intelligence (AI), Machine Learning, Data Privacy, Cybersecurity, Web Scraping, Technical Architecture, Technical Leadership, RESTful Microservices, Software Engineering, SQL Server 2017, WCF Web Services, API Documentation, Technical Writing, Dapper, Security, Multitenancy, SaaS Design, Continuous Delivery (CD), Data Pipelines, MongoDB, API Design, API/Services Architecture

Architect (Contractor)

2008 - 2010
Orange
  • Implemented business Intelligence projects with SQL Server Reporting Services.
  • Worked in a distributed team of over 40 developers.
  • Managed software projects with the Team Foundation Server.
  • Architected and built a mobile phone-based money transfer system using .NET, and an Oracle back-end.
  • Developed and deployed WPF client applications to serve as the management front end for mobile-transfer applications.
Technologies: BizTalk, Windows Presentation Foundation (WPF), SQL Server Reporting Services (SSRS), TFS, SMPP, ClickOnce, Windows Communication Foundation (WCF), MySQL, SQL, SOAP, SOLID Principles, Solution Architecture, Third-party Integration, Git, APIs, Integration Testing, JUnit, Microsoft Access, Back-end, C++, Software Consultant, Software Consulting, SQL Server 2012, Win32, ADO.NET, FTP, FTP Servers, Win32 API, Inno Setup, SQL Server Integration Services (SSIS), Performance, Integration, Windows Server, .NET, ASP.NET, Data Processing, ASCII, DLL, Scalable Application, Scalable Architecture, Security Design, Software Design, Agile, Artificial Intelligence (AI), Machine Learning, Technical Architecture, Windows Forms (WinForms), C#.NET WinForms, Software Engineering, WCF Web Services, API Documentation, Technical Writing, Security, API Design

Software Contractor

2004 - 2008
TopCoder Software
  • Performed architecture validation and designed the J2EE systems for projects ranging from order management to healthcare provision systems.
  • Built a .NET-based smart client applications for ratings and viewership tracking.
  • Constructed an ASP.NET MVC document management system.
  • Wrote unit and integration tests to ensure full coverage of the code base.
  • Performed component architecture for an application-building system based on NAnt.
Technologies: Microsoft Commerce Server, Standard Template Library (STL), C++, JUnit, Windows Communication Foundation (WCF), ASP.NET, Jakarta EE, C#.NET, Unit Testing, Localization, SQL, SOAP, SOLID Principles, MVC Design, REST APIs, Solution Architecture, Visual Studio, APIs, Integration Testing, Full-stack Development, Microsoft Access, Back-end, API Integration, Microsoft SQL Server, Cryptography, Software Consultant, Software Consulting, SQL Server 2012, Win32, ADO.NET, FTP, FTP Servers, Win32 API, Inno Setup, SQL Server Integration Services (SSIS), Integration, Windows Server, .NET, ASCII, DLL, System Service & Hardware Control, Point of Sale, Full-stack, Front-end, Security Design, Software Design, Web Scraping, Windows Forms (WinForms), C#.NET WinForms, Software Engineering, API Documentation, Technical Writing

Lead Developer

2000 - 2004
theSOFTtribe
  • Architected and helped develop a web-based customer self-care system application for mobile phone companies.
  • Designed and coded a C++ RAD framework to facilitate Windows NT development.
  • Built a multiplatform database manipulation library (Interbase, SQL Server, and Oracle were all supported).
  • Created a software internationalization tool suite using C++ and XML back-end storage.
  • Developed a public-key data encryption library for front-facing Linux system tools.
  • Created replacement modules for a computer associates' Clipper system calls to make it Windows NT enabled.
  • Designed a mission-critical online transaction processing databases on Oracle, Interbase, and MySQL.
Technologies: Cryptography, Linux, Java, InterBase, Oracle, C#, ASP.NET Web Forms, C++, MySQL, Localization, SQL, SOAP, SOLID Principles, MVC Design, Solution Architecture, JUnit, dBASE, Full-stack Development, Microsoft Access, Back-end, Microsoft SQL Server, C, SQL Server 2012, Win32, ADO.NET, FTP, FTP Servers, Win32 API, Inno Setup, Windows Server, ASCII, System Service & Hardware Control, Point of Sale, Full-stack, Front-end, Software Design, Web Scraping, Windows Forms (WinForms), C#.NET WinForms, Software Engineering, Technical Writing, Stock Trading

Food Delivery Application Ecosystem

I architected and coded the entire system (mobile application and back-end microservices) for a food-delivery and courier-tracking application.

Work Done:
• Wrote around 12 microservices, using Node.js and C#: order fulfillment, vendor communications, and delivery routing.
• Built two relational databases (MySQL) and a NoSQL one (DynamoDB).
• Developed four mobile applications (iOS and Android for consumers and Android for couriers and vendors).
• Implemented the interactions with third-party APIs (REST and proprietary) exchanging JSON and XML payloads.

Node.js Communications Platform

I designed and built a communications platform using Node.js that enables clients to reach out to their customers by email, browser-push notifications, SMS, or voice calls.

The project was hosted in the AWS cloud and used Twilio to make voice calls and send SMS.

An exciting aspect of the project is the innovative use of SNS, SQS, and Lambda to achieve massive scalability while keeping costs under control.

Automated Enterprise Bus Service for Distributed Systems

I designed and built a system, enabling different service owners to provide a formal description of their service (name, list of endpoints and operations, and input parameter and output object schemas), using standard description grammars (WSDL, WADL, and more), authentication schemes, and providers.

In return, the system ensures the discovery and interoperation (with the appropriate sequencing of operations and marshaling of input/output parameters) across protocols and service styles without writing a single line of code.

Serverless SMS Platform

I designed and built an SMS-based platform on .NET. It enables a client to receive, and process text messages on short-codes, and react to them by performing database queries and responding with text messages localized to the specific region of the original sender.

The entire project was hosted in the AWS Cloud and made extensive use of Lambda, S3, SNS, DynamoDB, Pinpoint, RDS (PostgreSQL), and CloudWatch.

Neural Network-driven Customer Recommendation Engine

Using TensorFlow, I wrote code that runs a model to examine past offerings, contrasts them with customer engagements (purchases, cancellations, and more), and periods to determine the optimal (leading to the most purchases and least cancellations) product offering on a future date. The resulting code produces an accurate result for dates up to two weeks in the future using a few months of training data.

Customer Communications Bot | SMS and Facebook Messenger

I designed and built a bot to handle customer requests and perform back-end server actions (retrieve and move user-profiles and videos) in a Healthcare support application.

Technologies: Amazon Lex, Twilio API, Node.js, Facebook SDK, and Go.

Network Performance Monitor

Utilizing a C++ written native layer that intercepts socket-level events, I designed and built a cross-platform component. The component computes statistics on network performance (errors, port utilization, data rates, and more), buffers them, correlates them to method calls within the code of a currently running a .NET or Java application. It then sends the augmented-stack traces to a remote collection server using an optimized binary transfer protocol.

Mobile Staff and Job-tracking Application

This is an enterprise mobile-phone application that was distributed to thousands of staff and customers. The aim was to allow the client-company employees to receive assignments on the road, report on their activities, and keep the customers informed on the-state-of-the-jobs they are paying for.

I designed the architecture and led the development team behind this application.

Customers are kept up-to-date via an SMS sent from back-end servers via the Twilio API. Concurrently, the staff receives notifications through their devices on the Amazon Simple Notification Service (plugged into Google Cloud Messaging and Amazon SQS for fanning out to the appropriate collaborating staff).

Generic GA Tuner

This genetic algorithm tuning object can be used generically through a simulation object representing the environment in which individual strategies—the chromosomes—must perform. The first application was for financial options computations.

Billing Management Software with Assistive Technology

I developed billing/time management software for employees of a legal firm, some of whom may need accessibility features.

The application was written in C++ (using C++ Builder) for Windows XP and used the Microsoft Active Accessibility API to enable specific features:
• Support the high contrast mode.
• Make all of the functionality of the application keyboard (not only mouse) accessible.
• Provide an on-screen keyboard.
• Enable scaling of all screens, controls, and fonts in the UI appropriately with user preferences.

Payment Service-Provider Fulfilment API

This project revolves around a Node.js API service that communicates with banking institutions using REST and HTTP to implement the Open Banking 3.1.4 specification. I stored information in a PostgreSQL database.

The entire system consists of two component services. The service I was in charge of exposed its contract via Swagger, made optimal use of dependency injections to facilitate unit testing (mocking its storage, authentication service, third-party APIs, and more). Deployment was done through Docker images.

Home Safety IoT Project

Tasks Accomplished:
• Composed the appliance code: reads sensors and periodically reports on their values.
• Built the back-end API using AWS Lambda with Aurora storage.
• Implemented data-processing functions, emitting safety diagnostics based on the data read by the appliance.

This IoT project deployed more than 600,000 appliances with gas and weight sensors to multiple homes, reporting to a back-end server to detect various safety conditions.

Mobile applications (iOS and Android) and web applications are used to interact with each appliance's data to view the diagnostics and predictions attached to it.

Enterprise Content-Management Solution

I was one of the back-end developers for a .NET Core-based content-management system that created and maintained data pipelines between eCommerce websites and the cloud storage of product information and metadata.

Languages

SQL, C#.NET, Java, C#, HTML, XML, Go, dBASE, C, C++, TypeScript, JavaScript, CSS3, Java 11, Bash Script, Python 3, GraphQL, Python

Frameworks

ASP.NET, JUnit, ASP.NET MVC, .NET, NancyFx, .NET Core, .NET 4, ADO.NET, Windows Presentation Foundation (WPF), Hadoop, ASP.NET Core, Mockito, Blazor, Entity Framework Core, Spring, Google Guice, Angular, ASP.NET Web Forms, Express.js

Libraries/APIs

API Development, LINQ, REST APIs, Twilio API, Node.js, Web API, Win32 API, Entity Framework, Windows Forms (WinForms), Standard Template Library (STL), Facebook Messenger API, React, TensorFlow, jQuery

Tools

IntelliJ IDEA, Amazon Simple Notification Service (Amazon SNS), Amazon Simple Queue Service (SQS), Visual Studio .NET, Amazon Lex, Amazon CloudWatch, GitHub, C#.NET WinForms, Visual Studio, Git, GitLab, Auth0, AWS Batch, Terraform, Microsoft Access, AWS Fargate, Dapper, Chef, TFS, MATLAB, Mathematica

Paradigms

API Architecture, Concurrent Programming, Lambda Architecture, Unit Testing, REST, Microservices, MapReduce, MVC Design, Serverless Architecture, Model View Controller (MVC), Continuous Integration (CI), DevOps, Scalable Application, Agile, Continuous Delivery (CD), API/Services Architecture, Agile Software Development, Service-oriented Architecture (SOA), Functional Programming

Platforms

AWS Lambda, Amazon Web Services (AWS), Windows, AWS IoT, Win32, Windows Server, Linux, Docker, Azure, Kubernetes, Windows Server 2016, Amazon EC2, Android, iOS, Microsoft Bot Framework, Oracle, Jakarta EE, Google Cloud Platform (GCP), Twilio

Storage

Databases, MySQL, NoSQL, Amazon S3 (AWS S3), Amazon DynamoDB, JSON, Relational Databases, SQL Server 2012, PostgreSQL, SQL Server 2016, Microsoft SQL Server, MongoDB, Redis, SQL Server 2017, Azure SQL, Data Pipelines, InterBase, SQL Server Reporting Services (SSRS), Oracle RDBMS, Azure Blobs, SQL Server Integration Services (SSIS), Google Cloud

Other

Internet of Things (IoT), Architecture, Software Architecture, Cloud, Concurrency, Lambda Functions, Algorithms, AWS Cloud Architecture, Monitoring, Distributed Systems, Data Structures, APIs, Solution Architecture, Software Development Lifecycle (SDLC), Amazon API Gateway, Localization, SOLID Principles, Serverless, Amazon RDS, Third-party Integration, CI/CD Pipelines, Integration Testing, Back-end, API Integration, Integration, RESTful Services, Webhooks, ASCII, DLL, Point of Sale, Scalable Architecture, Security Design, Software Design, Leadership, Scalability, Technical Architecture, Technical Leadership, .NET 6, RESTful Microservices, Software Engineering, Online Payments, API Documentation, Technical Writing, SaaS Design, API Design, Cryptography, Accessibility, USB, SOAP, Full-stack Development, Software Consultant, Software Consulting, FTP, FTP Servers, Performance, Data Processing, System Service & Hardware Control, Full-stack, Scheduling, CTO, WCF Web Services, Payment APIs, Security, Multitenancy, Cloud Architecture, Windows Services, Profiling, Service, Windows Communication Foundation (WCF), ClickOnce, SMPP, BizTalk, Microsoft Commerce Server, Accessible Design, Mathematics, Inno Setup, WebSockets, Front-end, Artificial Intelligence (AI), Machine Learning, Data Privacy, Web Scraping, SaaS, Stock Trading, OAuth

Industry Expertise

Cybersecurity

2007 - 2008

Master's Degree in Software Engineering

University of Liverpool - Liverpool, United Kingdom

1993 - 1996

Bachelor's Degree in Mathematics

Paris Diderot University - Paris, France

OCTOBER 2004 - DECEMBER 2008

Most Valuable Professional (Award)

Microsoft

AUGUST 2000 - PRESENT

Oracle 6 DBA

Oracle

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring