Post Job Free
Sign in

Project Manager Developer

Location:
Spain
Posted:
March 29, 2014

Contact this candidate

Resume:

Juan Javier Domínguez Moreno

Personal Information

Marital Status: Married

Nationality: Spanish

Age: Thirty four. May 14, 1979

Place of Birth: Caracas, Venezuela

Address: Calle Anastasio Aroca, 12, 1 B, Madrid. Spain. 28002.

e mail: ****.*********@************.***

web: http://www.eveutilities.com

Phone: +34-638******

Overview

I am a Mathematician with more than nine years of experience as an optimization

consultant. I have worked for ILOG, IBM and currently at a small ex ILOG employees owned

company called DECIDE. I am a very good programmer with extensive knowledge of C++ (9 years

experience), Java (8 years experience), Python (5 years experience) and Fortran (4 years

experience). I own two MSc. in Mathematics and I have a passion for knowledge and innovation.

My strong areas are mathematical optimization, constraint programming, evolutionary algorithms,

probability, stochastic calculus and numerical analysis. A few years ago I got interested in finance

and it has become my personal research area.

As an optimization consultant I have been exposed to several clients and diverse sectors

and problems. I am good at dealing with clients and managing expectations. Currently I am the

manager of a small team of eight operational research consultants focused on optimization with a

goal to add data mining to our list of skills and services. I am a hard working person that knows how

to deal with several tasks at the same time and I am very good at managing my own time. I want

to follow a technical career and like having responsibilities and making decisions. I am creative,

dynamic and innovative within the bounds imposed by the situations.

Work Experience

DECIDE Soluciones S.L. Principal Consultant and Project Manager. Since June 2013

Airbus Military, Madrid, Spain. Since June 2013

Developent of an existing application to schedule production tasks of several aeroplanes at

Airbus Military. I am in charge of analyzing, designing the software and developing critical

tasks as well as managing the project in all aspects. The application is a desktop one built

on Java Swing using ILOG CP C++ libraries for scheduling and SAP JCO for data

communication.

DECIDE Soluciones S.L. Operations Research Technical Leader. February 2011 – May 2013

• DECIDE Soluciones S.L., Madrid, Spain. Since February 2011

As the technical leader of the Operations Research Expertise Unit I am in charge of

supervising the training of the Operations Research (OR) team, the correct execution of

projects; providing expert support to consultants in modelling, programming and selection

of software packages for all OR projects; and providing technical support to the sales team.

During this time I have been part of the following projects:

Prosegur: Expert support in writing specialized constraints and heuristic for the constraint

programming engine to compute employee shift schedule for this worldwide private

security company using IBM ILOG CP Optimizer.

Red Eléctrica de España: Technical support for developing custom stopping rules and

linear programming relaxations for a unit commitment model using IBM ILOG ODME.

MIPSolver: Design of a Java mixed integer linear programming modelling library with

interfaces for IBM ILOG CPLEX, Gurobi, COIN CBC and GLPK.

Provisioning: Design of an optimization engine to compute the SKU order plan for

retailers using MIPSolver.

Citröen: Prototype design of a car configurator that will eventually replace the current

Citröen car configurator using Choco Solver.

Airbus: Development of a new scheduling heuristic for the A400M task and resources

scheduling application using ILOG CP Scheduler.

DIA: Support for the changes of a MIP model for the computation of the store

distribution plan using IBM ILOG OPL. Migration of current OPL solution to a solution

based on MIPSolver.

Prosegur: Development of a prototype for the assignment of employees to armoured

trucks routes using Django, PostgreSQL and IBM ILOG CPLEX. Analysis of the project to

develop assignment services for armoured routes resources. Analysis and design of a

resource assigment solution for armoured trucks using IBM ILOG CPLEX in Java.

Airbus: Leader in a project to extend the functionality of a current software for task and

resources scheduling to other departments using Swing, SAP JCO and ILOG CP

Scheduler.

Eve Software Utilities. Founder and developer. Since December 2009

Eve Software Utilities, Madrid, Spain. Since December 2009

Eve Software Utilities is an ISV specialized in operational research. The core product, Emma,

is a constraint programming library written in Python. The future of Eve Software Utilities will

be the development of vertical solutions to address several business like time tabling,

distribution routes design, task scheduling and resource allocation, among others. The

company also offer consulting services to help clients deploy the software and build

applications.

DECIDE Soluciones S.L. Optimization Consultant. October 2010 – January 2011

Prosegur, Madrid, Spain. October 2010 – January 2011

Analysis and development of an application to manage security employees and materials.

Given a sold service indicating the number of work places and time frames, the application

will choose the employees that will best cover the service. All union regulations, employee

corporation agreements and general regulations must be satisfied. It will be possible to

configure the application to generate assignments with lower economic cost, high

employee satisfaction, high client satisfaction and others.

The problem will be modelled as a multi objective constraint satisfaction problem with

custom constraints and propagation procedures. Custom search procedures will be

developed to search for solutions considering the configuration of the multi objective

function.

The application is a library developed using Scrum, in C++ using IBM ILOG CP Optimizer, the

library is deployed as a TIBCO service in a Windows Server.

IBM S.A. IT Specialist. July 2009 – September 2010

Sales support, Madrid, Spain. January 2010 – September 2010

Support for the sales department developing demonstration application for empty

container management, provider orders scheduling, general task scheduling with resource

allocation, gas transportation and shift scheduling among others.

Santander Bank, Madrid, Spain. July 2009 – December 2009

Developer of an application to select marketing opportunities.

Given a number of marketing opportunities, the applications executes a filtering process in

which some marketing opportunities are discarded and a score is assigned to the marketing

opportunities left. Then, an optimization problem is solved to select the marketing

opportunities that maximizes the sum of the scores, there are constraints on the number of

marketing opportunities an agent, office, area and client are allowed to accept during the

period of time defined for the process.

The optimisation problem is a binary linear problem in which the variables indicates whether

an opportunity is selected or not. The average problem has around 750,000 variables and

200,000 constraints.

The application uses a client server architecture to solve optimisation problems remotely. It is

built using ILOG ODM for the client server architecture, ILOG CPLEX to solve optimisation

problems, and ILOG JRules for the filtering and scoring process.

The application was written in Java and JavaScript.

ILOG S.A. Optimisation Consultant. January 2007 – June 2009

Honda, Barcelona, Spain. January 2009 – June 2009

Developer of a business rules package to generate invoices and bonuses using ILOG Rules

for .NET.

The package was written in C#.

Canal de Isabel II, Madrid, Spain. September 2008 – December 2008

Instructor of an ILOG OPL and ILOG ODM workshop.

During the workshop we developed a pilot application to determine the monthly and daily

water distribution plan for the city of Madrid.

For the monthly distribution plan, given the water distribution network of the city, the goal is

to determine from which water reservoir and from which arcs to send the water to satisfy the

demand nodes. The objective function was composed of the potential economic loss

caused by lowering water reservoirs levels, and the cost of not satisfying the demands at the

nodes. The most complex constraints were related to the reversibility of some arcs in the

network and with the electric generators and their impact over the multi objective function.

The problem was modelled as a mixed integer linear programming problem. Due to the

complexity of many constraints, it was decided to use the MILP formulation instead of

adapting a network algorithm.

The daily plan was also formulated as a MILP. The goal is to minimize the number of

operations required to satisfy the monthly plan, an operation is an adjustment in the water

distribution network. The modelling of this problem was particularly challenging because of

the non linearity of the pressure and power expressions that must be considered. A non

linear formulation would be useful for the resolution these problems, but the MILP formulation

was used because of software limitations.

The optimization solutions were complemented with the development of a graphic module

to visualize the network and the results of the optimizations.

The application was developed using ILOG OPL with ILOG CPLEX and the graphical

modules were written for ILOG ODM using ILOG JViews in Java.

Atos Origin, Bilbao, Spain. June 2008 – August 2008

Instructor of an ILOG CP workshop.

Consultancy for the design and start up of three applications, one for product distribution

over a network, one for task scheduling of mills load and emptying operations and other for

computing truck load and route plans.

The first application was designed to provide a strategic plan for producing and distributing

product over a network of factories, warehouses and client areas. The problem was

modelled as a classic minimum cost flow network problem and is intended to be solved

using ILOG CPLEX network algorithm.

The second application is a kind of job scheduling problem where the application must

compute the time periods when machines must produce product. The product is to be

stored in mills that will be unloaded when orders are sent to clients. The problem can be

modelled like a network of tasks and limited resources. The software selected to find

solutions was ILOG Scheduler using a search heuristic designed by the client.

The third application is a Vehicle Routing with Pick up and Delivery with some special

constraints related to the type of product delivered and the relations between the pick ups

and deliveries. The product used for this application was ILOG Dispatcher.

All prototypes were written in C++.

Santander Bank, Madrid, Spain. March 2008 – May 2008

Development of a proof of concept for selecting marketing opportunities using ILOG ODM.

Carrefour, Madrid, Spain. December 2007 – February 2008

Analysis of an application and evaluation of a project for inventory management.

The developed application based on this analysis and evaluation computes the amount of

product that must be asked to each provider, and at which moment in time, in order to

keep a security stock level while minimizing economic costs.

The model is a simplification of a multi echelon inventory model with many side constraints

originated by the conditions of the providers and characteristics of trucks.

The project was developed using ILOG ODM and the model is solved using ILOG CPLEX.

NTS mobile, Bilbao, Spain. July 2007 – November 2007

Instructor of an ILOG OPL workshop.

Developer of an application to assign shifts to the Bilbao harbour employees.

The assignment is done daily with the demands required by ships for the next day. The

assignment is computed considering the skills, preferences and contract conditions of the

employees.

The problem is reduced to a general matching problem and is solved using ILOG OPL and

ILOG CPLEX.

EADS/CASA, Madrid, Spain. January 2007 – June 2007

Developer of an application to schedule tasks and allocate resources for the assembly line

the A400M aeroplane.

This is a desktop application developed in Java using RFC's to interchange data with SAP.

The model is a resource allocation and task scheduling problem with a basic search

strategy that tries to reduce the span of the schedules.

The application uses ILOG Scheduler to compute schedules and ILOG JViews to visualize

the scheduling results and monitor the current status of the assembly line. The scheduling

module was developed in C++ and the GUI in Java swing.

ILOG S.A. Junior Optimisation Consultant. June 2005 – December 2006

Metro de Madrid, Madrid, Spain. June 2005 – December 2006

Developer of a module to assign rosters to Metro de Madrid employees in the monthly and

yearly assignments.

The rosters required to satisfy the demands of the metro system are computed yearly and

must be assigned to employees. The assignments must satisfy the skills and preferences of

the employees and rosters, that is, employees prefer some rosters, and rosters prefer

employees with some skills and characteristics.

The model is a constraint satisfaction problem with several search heuristics designed

specifically for this solution.

The module was developed using ILOG Solver in C++ and Java.

Freelance Operational Research Consultant. November 2004 – May 2005

Hospital Universitario La Paz, Madrid, Spain. January 2005 – May 2005

Developer of the shift assignment module for the GPT (Gesti ón y Planificación de Turnos)

application deployed in many hospitals in Spain.

The application is a shift work management for nurses and supervisors. It interfaces with

many database thanks to the use of Hibernate. The assignment module considers a group

of nurses, a daily shift demand, shift patterns and a list of desired measures for each nurse.

The patterns can specify the weekly sequences of shifts that are allowed and the length

free sequences that are not allowed for an employee. The measures are quantities,

computed using the assigned shifts, that must have a predefined value during the

assignment period for each employee.

The mixed integer linear programming model assign possible patterns to nurses, maximizing

demand satisfaction. The constraint are bounds on measures over periods of time and the

prohibitions generated by not allowed patterns.

The module was built using ILOG CPLEX in Java.

Neoris/CEMEX, Madrid, Spain. November 2004 – December 2004

Instructor of an ILOG CP workshop.

Developer of a module to compute vehicle routes for the distribution of cement for CEMEX.

The solution is a Vehicle Routing with Pick up and Delivery with some special constraints

related to the areas where the product is delivered. The multi objective problem uses the

number of used trucks, routes length, and around ten more indicators to measure the

quality of solutions.

The module was built using ILOG Dispatcher and ILOG Scheduler. The solutions were

improved using a Tabu search with many custom neighbourhoods to perform the local

search.

Simón Bolívar University. Teaching Assistant. April 2003 – August 2004

Numerical Computing Department, Caracas, Venezuela. April 2003 – August 2004

Teaching assistant of programming, numerical analysis and optimization courses for

engineering and mathematics students.

Simón Bolívar University. Programmer. March 2002 – December 2002

CESMa, Caracas, Venezuela. March 2002 – December 2002

Programmer of an algorithm to compute the analytic centre and determine unbounded

variables of linear programming problems using Matlab.

Education

Master of Science in Advanced Mathematics

UNED, Madrid, Spain. October 2009 – February 2012

Final thesis: “Simultaneous calibration and pricing of European options”

Master of Science in Mathematics

Simón Bolívar University, Caracas, Venezuela. April 2003 – August 2004

Final thesis accepted with honours: “An interior point algorithm for large scale quadratic

programming”

Licentiate in Mathematics: Statistics and Computational Mathematics

Simón Bolívar University, Caracas, Venezuela. September 1996 – March 2003

Final dissertation accepted with honours: “3D estimation of seismic velocities and interfaces

using non linear optimization techniques”

Publications

J. Domínguez and M. D. Gonzalez Lima, A primal dual interior point algorithm for quadratic

programming, Numerical Algorithms 42 (2006), pp. 1 30.

Software

Linux, Unix, Windows

Python, Java, C++, Fortran 2003/2008

Matlab, Octave

AMPL, GAMS, PuLP, IBM ILOG OPL

IBM ILOG CPLEX, IBM ILOG CP Optimizer, IBM ILOG ODME

COIN OR CBC & CLP, Gurobi, GLPK, Choco Solver

XML, HTML, CSS, SQL, wsgi

GTK+, PyGObject

LaTeX, emacs, make, svn, cvs, mercurial, grep, eclipse and other development tools

Seminars

“Linear and stochastic programming applications in asset/liability management” as part of

a series of training session at Santander Bank. September, 2012. Madrid, Spain.

Invited as an expert for the Advanced Computing Workshop at the European's Commission

ActionPlantT Factories of the Future. October, 2011. Brussels, Belgium.

“Operational efficiency in the industry through optimisation” at VIII Foro de Interacci ón

Matemática Aplicada Industria. June, 2011. A Coruña, Spain.

Languages

Spanish and English

Others

University of Michigan. Introduction to Finance certificate at Coursera in 2013.

Simón Bolívar University Mathematics Department students representative 2001 – 2002



Contact this candidate