Alain-Michel Chomnoue Nghemning, Back-end Developer in Abidjan, Lagunes Region, Côte D'Ivoire
Alain-Michel Chomnoue Nghemning

Back-end Developer in Abidjan, Lagunes Region, Côte D'Ivoire

Member since September 29, 2015
Alain-Michel is a software engineer with a passionate interest in data science. He's helped organizations build several software products currently running in production. Alain-Michel excels at building back-end APIs and also contributes to front-end development. Since 2012, he has delivered projects—working remotely and on-premise—with clients worldwide in various domains, including customs, banking, and logistics.
Alain-Michel is now available for hire

Portfolio

  • Toptal
    AWS, AWS Lambda, Serverless, Serverless Framework, Serverless Architecture...
  • A Job Board for Freelance Work
    JPA, SQL, REST, REST APIs, APIs, Git, Jenkins, Java 8, IntelliJ IDEA...
  • Sopra Steria
    Subversion (SVN), UML, Eclipse, Spring Boot, Java 8

Experience

Location

Abidjan, Lagunes Region, Côte D'Ivoire

Availability

Part-time

Preferred Environment

Git, Spring 5, Gradle, Java 8, IntelliJ IDEA

The most amazing...

...software I've developed is a web application to analyze thousands of code repositories and display insights to managers on a single dashboard.

Employment

  • ETL Developer

    2021 - PRESENT
    Toptal
    • Developed a recommendation engine for the users of a music jamming application.
    • Designed a graph database to store connections between users and their location, their preferred instruments, and the latency between them.
    • Developed ETL functions to collect data from user logs (stored in S3) and the PostgreSQL main database to feed the graph.
    • Used community detection algorithms to make a recommendation engine out of the built graph.
    Technologies: AWS, AWS Lambda, Serverless, Serverless Framework, Serverless Architecture, Neo4j, PostgreSQL, Python, Graph Databases
  • Chief Software Architect

    2015 - 2019
    A Job Board for Freelance Work
    • Designed and built the code server application for source code storage, analysis, and insights sharing, processing over 1,000 codebases daily.
    • Built a RESTful API to share insights found in the analyzed codebases.
    • Designed and built CI/CD pipelines for microservices.
    • Onboarded, mentored, and supervised a team of six software engineers in the system build.
    Technologies: JPA, SQL, REST, REST APIs, APIs, Git, Jenkins, Java 8, IntelliJ IDEA, Kubernetes, Docker, Neo4j, Gradle, Spring Boot, Swagger, Leadership, Management, Message Queues, Back-end, Back-end Development, Graph Databases
  • Software Engineer

    2012 - 2015
    Sopra Steria
    • Developed, maintained, deployed, and trained users on human resources and payment management software.
    • Built a module for enrollment, monitoring, and payroll of daily workers in the port of Libreville, used by more than ten users to manage over 500 workers.
    • Contributed to the development of a module for monitoring the working hours of dockworkers in the port of Douala, used by more than 20 users to manage over 2,500 dockworkers.
    Technologies: Subversion (SVN), UML, Eclipse, Spring Boot, Java 8
  • Support Engineer

    2011 - 2012
    PolytechValor
    • Maintained and enhanced the customs software for transit management (Nexus+).
    • Assisted users in the Cameroon Customs and in more than five partner banks.
    • Developed the moratorium management feature with PHP.
    Technologies: PHP
  • Business Intelligence Intern

    2010 - 2011
    Orange Cameroon
    • Built a clustering model to classify customers based on their phone usage, helping marketing people to design more targeted products.
    • Developed an web application to help business intelligence team run data mining algorithm on their data without the need of an expert.
    • Wrote a paper on the analysis and design of tools for customers’ segmentation in a telecommunication company (Cari-info.org/cari-2012/session%203/3B1.pdf).
    Technologies: Data Mining, Oracle, Java

Experience

  • API Rate Limiter
    https://bitbucket.org/chomnoue/api-rate-limiter/src/master/

    To avoid performance issues and reduce costs, the API rate limiter allows a company to avoid too many calls to a given API.

    The limits are configurable, and the rate limiter should throttle AIP calls in the following situations:
    1. Too many requests within the same time window from a client
    2. Too many requests from a specific client on a per month basis
    3. Too many requests across the entire system

    The application is built to run in a distributed environment and has been designed to scale effectively.

  • NPS Score from Social Media
    https://social-nps.herokuapp.com/dashboard

    A serverless API that collects tweeter posts tagging targeted companies, runs a sentimental analysis on them, and computes their NPS (see Medallia.com/net-promoter-score/#). It runs on AWS, involving cloud services like Lambda, Firehose, S3, DynamoDB, Comprehend, and the NPS score for telcos (Social-nps.herokuapp.com/dashboard). On top of that, I built a dashboard with Python and the Bokeh library and deployed it on Heroku to display the computed NPS scores.

  • Ebola Data Visualization
    http://chomnoue.github.io/EbolaDataVisualizationND/

    This visualization shows the evolution of Ebola cases in West Africa from August 2014 to May 2015, as reported by the WHO.

    The user can select an indicator and a date to see the status on the map. He can also choose to replay the animation for the chosen indicator.

    I chose to show the affected country on a map with the orange color differentiating them. Only the affected countries are named to let the user focus on them.

    A red circle is used to show the value of an indicator for each country. I chose a logarithmic scale for the circle radiuses so that with just a few cases, countries' values can be seen on the map.

  • Reduce Boilerplate Code With Scala Macros and Quasiquotes (Publication)
    The concise syntax of Scala usually helps developers avoid writing boilerplate. When repetitive code is required anyway, developers can use macros and quasiquotes to keep code clean and maintainable. Here's how.

Skills

  • Languages

    Java 8, Java, SQL, UML, Java 6, Python, PHP, JavaScript
  • Frameworks

    Spring 5, Spring Boot, Spring, Swagger, Hibernate, JPA, Serverless Framework
  • Tools

    IntelliJ IDEA, Gradle, Jenkins, Subversion (SVN), Git, PyCharm, AWS Athena
  • Other

    Software Design, Algorithms, Networking, Systems, Artificial Intelligence (AI), AWS, Bokeh, Amazon Comprehend, Data Mining, Spring Cloud, APIs, Leadership, Message Queues, Back-end, Back-end Development, Serverless
  • Libraries/APIs

    REST APIs, D3.js
  • Platforms

    Docker, Amazon Web Services (AWS), Kubernetes, Eclipse, Java EE, AWS Lambda, Heroku, Oracle
  • Storage

    Neo4j, Graph Databases, AWS DynamoDB, Redis, PostgreSQL
  • Paradigms

    REST, Management, Serverless Architecture

Education

  • Master's Degree in Computer Engineering
    2006 - 2011
    National Advanced School of Engineering - Yaoundé, Cameroon

Certifications

  • Oracle Certified Master, Java EE 5 Enterprise Architect
    AUGUST 2013 - PRESENT
    Oracle
  • Oracle Certified Expert, Java EE 6 Enterprise JavaBeans Developer
    APRIL 2012 - PRESENT
    Oracle
  • Oracle Certified Professional, Java SE 6 Programmer
    FEBRUARY 2012 - PRESENT
    Oracle

To view more profiles

Join Toptal
Share it with others