# Yann Esposito

PDF Version

name | Yann Esposito
mail |
port | (+33)650845271
address | Bât 9, Résidence Saint Marc
| 591, avenue Jean Aicard
| 06700, Saint Laurent du Var

## Professional Background

2016 | → |  | Clojure Software Engineer for Cisco (Threatgrid), Remote
2013 | → | 2016 | Machine Learning Scientist & Software Engineer at Vigiglobe, Sophia Antipolis, France
2010 | → |  | Co-Founder of GridPocket, Sophia Antipolis, France
2007 | → | 2013 | AirFrance, Sophia Antipolis, France
10/2006 | → | 3/2007 | Post Ph.D., Hubert Curien Laboratory, St-Etienne, France
10/2004 | → | 9/2006 | ATER (College Degree Teach & Research), Marseille, France
10/2001 | → | 9/2004 | University Monitor (College Degree Teach & Research), Marseille, France
1995 | → | 2000 | Miscellaneous summer jobs

## Education

2004 | CS Ph.D. in Machine Learning at Université de Provence
2001 | D.E.A. (Equivalent to Master in Computer science)
2000 | Maîtrise in Computer Science
1999 | Licence in Computer Science
1998 | DEUG MIAS (Math)
1995 | BAC S (Math)

## Research Activies: Publications

International Journal | [Fundamenta Informaticæ, 2008]
| [Pattern Recognition, 2004]
Internation Conferences | [ECML 2008] [ICGI 2006] [COLT 2006]
| [COLT 2004] [ICALP 2003] [ICGI 2002]
National Journal | [JEDAI 2002]
National Conferences | [CAp’06] [CAp’04] [CAp’03]

# Presentation

I am French with a Post Ph.D in Machine Learning1. Furthermore I love web programming and design.

I am currently working remotely for Cisco Security team as a Clojure Software Engineer.

Previously I worked for Vigiglobe. The first six months I worked with `node.js` (API/MongoDB/Web). Then we upgraded our stack to Clojure, Haskell, Mesos, Kafka, Druid, etc… At that time we were two to make all technical decisions. In the end we made a real time analytics of social media content on a scalable architecture. Actually our architecture is able to manage (Aggregation & Machine Learning) thousands of messages per second.2 In particular, I’ve written an Haskell twitter stream absorber able to handle thousands of tweets per seconds. And I coded myself a real time sentiment analysis module taking algebraic properties into account to optimize its efficiency.

- During my Ph.D. I made a C++ program (github3 and resume4). I coded most of standard HMM learning algorithms. I developed an algorithm which I invented during my Ph.D. which use some operational optimization algorithm. During this period I published articles in international conferences and I taught Computer Science to college students.

- At the Hubert Curien Laboratory I made my post Ph.D. I developed a scientific application in Java/applet/JWS that should be used by biologists. The code has been updated a bit since my 6 month post Ph.D5.

- I worked in the web industry for Airfrance. My work environment was quite heterogeneous. From shell scripting to manage huge amount of data, web design and production environment.

- I worked for GridPocket (I am a co-founder). This is a French startup specialized in Electric Grid. I created a private6 web application.

- I’ve also written an iOS application to manage passwords7.

- I am the author of some quite popular blog posts8.

For an almost exhaustive list of my projects, you could check my github account: github.com/yogsototh

# Public things done

- Cisco (threatgrid) Security & Threat Management.
- Vigiglobe architecture able to analyze thousands of social media messages in realtime. In particular, real time Machine Learning & Statistics.
- YPassword iOS application
- Gridpocket web services (from conception to realization, works in correlation with a mobile app)
- DEES: a 10.000 line C++ command line program. This program implement most HMM standard algorithms & inference algorithms.
- SeDiL: a Java application using Swing UI. The goal is to provide biologist an easy way to use an algorithm that generate Similarity Matrices for strings but also for Tree structures. Most graphics was done by me, including the drawing of trees. I didn’t used a library for that purpose.
- For YPassword ; a Dashboard Widget, a web interface, a command line tool.
- Some websites: yannesposito.com, ypassword.espozito.com
- Written a thesis in Machine Learning and published in major international conferences: [ICALP 2003], [COLT 2004] & [COLT 2006].
- A full javascript web application which display Electric consumption in real time.
- krambook (the engine I use to create this document. I exported it in HTML, PDF (using ) and SVG.
- some Mac OS X screensaver, a MetaPost plugin to draw Automata, an RFC-like document to help my student to make a TOR like network, etc…
- a bunch of other projects see http://github.com/yogsototh

# Technical Competences

Languages | Haskell, Clojure, Javascript,
| scheme, C, camL, C++, Ruby, Perl, Java, Python, PHP
Web frontend | elm, Clojurescript, Reagent, Angular.js, sass, etc…
Web frameworks | compojure-api, Yesod, servant, actionhero
ML Tools | weka, SVMlight
Stream Computing | kafka, druid, storm (with clojure)
UNIX | Shell scripts (zsh, bash), awk, , ConTeXt, metapost
VCS | git, Bazaar (DCVS), subversion (svn), CVS
Mac/iOS | Objective-C Cocoa (Mac & iOS), Dahsboard widget,
| Quartz Composer

# Jobs

## Clojure Software Engineer for Cisco 2016 →

- Remote

Product | Security Threat Management
Role | Clojure Software Engineer

## Machine Learning Scientist & Software Engineer for Vigiglobe 2013 → 2016

- Sophia Antipolis, France

Product | Scalable Real Time Social Media Analytics
| Sentiment Analysis
| Many client side web applications (Angular.js & reagent)
Role | Machine Learning Scientist
| (fast sentiment analysis, learning protocols, etc..)
| Full stack engineer (backend to frontend architecture)
Keywords | Clojure, Haskell, node.js, reagent, Angular.js, Stream computing

## Co-Founder & freelance for GridPocket 2010 →

Sophia Antipolis, France

Product | Two API server (one for client, another for administration)
| A private client side web application
| An iPhone Application
| Some Linux boxes to send data to the servers
| A Linux driver
Role | Full technical responsibilities
Keywords | Ruby, REST, JSON, HTML, CSS, Javascript, AJAX,
| jQuery, Objective-C, ASIHTTPRequest, CorePlot, CoreData, C

## Consultant, AirFrance 2007 →

Sophia Antipolis, France

Role | In charge of the Airfrance CMS for their website.
Keywords | TeamSite, Perl, XML, XHTML, CSS, javascript, JSP,
| Unix (Solaris/Linux), Bazaar

## Post Ph.D 10/2006 → 3/2007

Université Jean Monet, Laboratoire Hubert Curien, Saint-Etienne

Product | SeDiL
Role | Java Developer
Research | Similarity measure between strings or XML trees
Contact |
Keywords | UML, Java 1.5, Swing, Java 2D, Java Web Start, Applet,
| subversion, XML, XHTML, PHP

Details:

> Java application: 11 000 lines with javadoc

> Main functionalities

> - learn edit matrices
> - compute edit distances between trees or strings
> - visualize trees or sequences (JAVA 2D)
> - classification using K means
> - Generate random tree couple from an edit distance matrice

> Web: http://labh-curien.univ-st-etienne.fr/SEDiL/

## ATER 10/2004 → 9/2006

Research & Teacher, Université de Provence, Marseille

teach 1/2, research 1/6, C++ development 1/3

DEES ; a C++ software

> 7500 lines of C++ code, 10.000 with comments

> Main functionalities:

> - Mulitiplicity Automata, HMM & PDA Inference,
> - Baum Welch & Viterbi Algorithms,
> - GraphViz export,
> - String Generation from many Models,

> Languages | C++
> API | STL
> Environment | Linux (Debian) & Windows XP

## Moniteur des Universités 10/2001 → 9/2004

Université de Provence, Marseille

teach 1/3, research 1/3, C++ Development 1/3

Creation of DEES (see preceeding entry).

# Diploma

2004 | Ph.D. degree in Machine Learning
2001 | D.E.A. in Computer Science (equivalent to master)
2000 | Maîtrise d’Informatique
1999 | Licence in Computer Science
1998 | DEUG MIAS (math)
1995 | BAC S (math)

# Scientific Publications

## International

Journals | [Fundamenta Inforamticæ vol.86 2008][Pattern Recognition, 2004]
Conferences | [ECML 2008] [COLT 2006] [ICGI 2006][COLT 2004] [ICALP 2003] [ICGI 2002]
Workshop | [TAGI05]

## National (French)

Journals | [JEDAI, 2003]
Conferences | [CAP 2006] [CAP 2004] [CAP 2003]
Thesis | [Université de Provence 2004]

# Projects

Most of my latest programming activities are publicly available at github.com/yogsototh

## Haskell libraries

- Link to list of packages

- `holy-project`
- `human-readable-duration`
- `wai-middleware-caching-lru`
- `wai-middleware-caching-redis`

- `wai-middleware-caching`

## YPassword 2008 →

Mainly an iOS application:

- YPassword, `http://ypassword.espozito.com`

I’ve done fully the website from scratch. Also there are some javascript implementation of YPassword method:

> - a Mac OS X dashboard widget,
> - a Cappuccino Web application,
> - a jQuery Web application,
> - a command line tool,
> - an Applescript helper

## Anonymous Network Project 02/2006 → 06/2006

Made a protocol similar to TOR for student.

## Other projects

- Web Application used for private team usage at AirFrance 2008 → This application is just done for teh lulz. Not related to the Airfrance work. But still pleasant. Javascript(Prototype.js, Scriptaculous), CSS, PHP/MySQL, Google Talk
- metapost package to draw Automata 2003 → 2004 metapost
- Mac OS X Screensavers (YClock & YAquaBubbles) 2003 → 2004 Objective-C,Quartz Composer,Cocoa

You could find even more information by looking at:

- My personnal website: `http://yannesposito.com`
- My github account: `http://github.com/yogsototh`

1. To be more precise in Grammatical Inference↩

2. http://vigiglobe.com↩

3. https://github.com/yogsototh/DEES↩

4. http://yann.esposito.free.fr/dees.php?lang=en↩

5. http://labh-curien.univ-st-etienne.fr/SEDiL/faq.php?lang=en (I like to believe I became a better designer ☺)↩

6. Sorry the code is private I can’t show it :(.↩

7. http://ypassword.espozito.com↩

8. http://yannesposito.com/Scratch/en/blog/↩