I am looking forward to growing my expertise on mobile development and ubiquitous computing while still having a chance to develop soft skills in a multicultural environment. Most of my experience is based on distributed applications, client/server model and recently medium sized web applications. Although I am very biased towards Microsoft’s technologies, I continuously use OSS as my development stack for my personal needs/hobbies.

How would I describe myself

Generalist engineer with a strong focus on distributed systems. Particularly interested in client/server and peer to peer networks, mobile computing. c#, javascript/babel/typescript, nodejs, c/c++, python, computer graphics, physical phenomena simulation (CAD, CAM, rapid prototyping) and industrial automation.

Skills

C# JavaScript Angular2 React Babel Redux Node AspNetCore Python Git Vim Visual Studio nodejs Ruby Visual Studio Code Typescript Freeswitch SIP VXML CCXML

Experience

Lead Architect Dial800

Los Angeles, California, U.S.A. September 2008 - June 2016

I am responsible for Dial800’s software ecosystem: a highly distributed system, working seamlessly across multiple data centers. The design and architecture of Dial800’s software are my primary task. The scope of this responsibility ranges from generating end user documentation, managing local and remote teams (U.S.A., México, Bolivia, Argentina, Colombia), coordinating with infrastructure vendors (telecom, hosting) on new projects and deployments, assisting clients and partners with API integrations and, in general, the oversight of 24/7 operation of this ecosystem.

A few selected projects I’ve designed/implemented while working at Dial800 are: - A lightweight service bus specialized on call data that works as an asynchronous event engine. (DOTNET) - Implemented a rules-based engine supporting both stateless and stateful call routing. (DOTNET Core/Angular2) - A call/lead tracking solution to generate reports and monitor campaign performance. (DOTNET 4.x/Knockout/Angular1.x/Kendo) - Implemented our Configuration Management Infrastructure. (Saltstack) - Implemented continuous integration/deployment. (Teamcity/Octopus Deploy/Powershell) - Implemented development workflows for the team. (NodeJS) - Implemented an autodialer solution to quickly test thousands of numbers (NodeJS)

Sr. Software Engineer Neoris

Monterrey, Nuevo León, México October 2006 - September 2008

I built a UDP/Multicast server to track stock market quotes in real-time, and exposing them through a custom PubSub framework for HTTP clients. C++ Development with the ACE Framework, tracking assets via RFID tags.

Automation Engineer Tesis de México

Monterrey, Nuevo León, México January 2006 - October 2006

  • Outsourced to Neoris, recruited to implement a flexible, Web-based tool for locating and viewing asset or people positioning in real-time.
  • Development of the QNX Neutrino platform, as well as Mandriva Linux using Trolltech’s QT application development libraries.

Teaching Assistant at Tecnológico de Monterrey

Monterrey, Nuevo León, México December 2005 - August 2005

  • I worked primarily on Structural optimization using FEM analysis. My main focus was using Altair’s HyperMesh. It was a fairly recent package, so one of my first tasks was to understand the software. After a couple of weeks, most of the work was based on making proposals of how to modify a part to meet requirements on stress, weight, reliability, etc. for the frontal wheel of an RV model for a vendor with presence in both the US and Canada.

Intern Volkswagen, A.G.

Wolfsburg, Niedersachsen, Germany August 2003 - February 2004

Worked on the design and implementation of software for the measurement of the spring back and strain field for deformed bodies

Education

B.Sc. Mechatronics Engineering

  • Tecnológico de Monterrey Monterrey, Nuevo León, México 2000 - 2005

Erasmus

  • Institut Polytechnique de Grenoble Grenoble, France 2005 - 2005
  • Fachhochschule Braunschweig/Wolfenbuettel Wolfenbuettel, Germany 2004 - 2005

Open Source

I am a strong believer in Open Source, and I try to contribute back whenever it is possible and time allows. A couple of projects I’ve contributed to are ng2-fileupload and @angular/router (First Design)

For an up to date list of contributions, please look at my full list of open source pull requests.