Jorge Santoro, Developer in Buenos Aires, Argentina

Jorge Santoro

APIs Developer

Location
Buenos Aires, Argentina
Toptal Member Since
December 12, 2014

Jorge has worked as professional Java developer since 2004. He is also a full-stack developer with copious experience in back-end applications. He has experience in different IT areas such as analysis, domain modeling, and implementation. He has worked in teams of all sizes.

Jorge is available for hire
Hire Jorge

Portfolio

Despegar.com - Aftersale
Go, Kotlin, Scala, Java
Despegar.com - Flights
Scala, Spark, Guice, Cassandra, Hibernate, Spring, Java
Despegar.com - Packages
Play, Scala, Hibernate, Spring, Java

Experience

Java - 13 yearsSpring - 10 yearsHibernate - 8 yearsAPIs - 7 yearsRESTful Development - 6 yearsKotlin - 3 yearsGo - 1 year

Location

Buenos Aires, Argentina

Availability

Part-time

Preferred Environment

IntelliJ, Eclipse, MacOS, Linux

The most amazing...

...thing I've coded is the back-end application for form generation and validation.

Work Experience

2016 - PRESENT

IT Coordinator

Despegar.com - Aftersale
  • Collaborated with several teams.
  • Coordinated different features among teams of different areas.
  • Defined application architecture and new features.
  • Defined and prioritized tasks with my teams and others.
  • Coached leaders and team members.
  • Tried new technologies.
  • Participated in providers' meetings.
  • Coordinated different teams in order to build MVPs.
  • Handled the team's backlogs.
  • Worked on the redefinition of transactional flows.
Technologies: Go, Kotlin, Scala, Java
2013 - 2016

Team Leader

Despegar.com - Flights
  • Worked on a full Java/Spring application, which is the back-end service that performs the booking of a selected flight. The project is a platform which exposes services with JSON responses. The API is used by different internal and external applications.
  • Helped define and develop different features.
  • Deployed on different environments, release candidates, staging, and production.
  • Ensured the health of the application on production using internal tools and New Relic.
  • Provided production support.
  • Created a new version of the current application using Java 8, Guice, and Spark. This new application satisfies the Despegar.com API contract.
Technologies: Scala, Spark, Guice, Cassandra, Hibernate, Spring, Java
2012 - 2013

Tech Leader

Despegar.com - Packages
  • Worked on a full Java/Spring application, which is the back-end service that performs the booking of a selected package. The project is a platform which exposes services with JSON responses. The API is used by different internal and external applications.
  • Developed a Maven Archetype to create different checkout modules for different products.
  • Created a back-office application to review the different products sold, based on Scala and Play.
  • Worked on the definition and development of different features.
  • Deployed on a different environment, release candidates, staging, and production.
  • Ensured the health of the application on production using internal tools and New Relic.
Technologies: Play, Scala, Hibernate, Spring, Java
2011 - 2012

Java/Grails Architect

TeraCode, Panera Bread - OnlineShopping
  • Worked on a Grails web application. The project is a RESTful server which provides a JSON API that is consumed by different kind of client, such as an iPad application working as a Kiosk on different stores, a web application, and different mobile applications. The application consumes several third-party services to manage customers, loyalty, payments, and kitchen services.
  • Developed and certified the integration with FirstData to handle payments through credit cards.
  • Helped analyze the client offices and generate documentation for the project kickoff.
  • Led the application performance improvements, tuning of SQLs, and changes in the way the application gets its information from the database.
Technologies: REST, Apache Maven, Spring, Hibernate, Groovy, Grails, Java
2011 - 2011

Grails Architect

TeraCode, Perpetual Eye
  • Worked on a Grails web application using the standard Grails stack. The project was a violation detection tool for model agencies, which crawled different websites and captured their images. The images were processing with a face recognition service that allows the application to create different violations.
  • Helped estimate, research different technologies, analyze, design, model domains, and develop the application using Agile methodologies.
  • Created a crawler tool using Groovy and integrated it into the application.
  • Created integration with a face recognition service.
  • Monitored and controlled the methodologies, processes, and best practices used in the project.
  • Provided guidance and advice to the team on technical and functional issues.
Technologies: Hibernate, Spring, Grails, Groovy, Java
2009 - 2011

Team Leader

TeraCode, Imagitas
  • Worked on a Java web application based on a domain-driven design architecture. The application creates ads based on different templates.
  • Integrated with the ad serving tool via SOAP.
  • Designed the domain model and developed the most critical features.
  • Provided guidance and counsel to the team regarding technical issues and project implementation.
  • Utilized a continuous integration tool and code review process.
  • Wrapped up the project in the client's office where the setup for all the development environments was done.
Technologies: Apache Wicket, Apache Maven, Hibernate, Spring, Java
2008 - 2009

Team Leader

TeraCode, JumpTap - Monetization
  • Created an internal tool to generate reports.
  • Negotiated features with the client and business team.
  • Prepared statements of work and daily status meetings for the customers.
  • Developed a Java web application which is the back-end of a mobile search engine. The application served ads to the searches executed by mobiles.
Technologies: REST, Apache Wicket, Apache Maven, Apache Lucene, Hibernate, JavaScript, Spring, Java
2007 - 2008

Java Architect

Assert Solutions
  • Developed a proprietary application framework using open source libraries. This framework provides capabilities such as persistence, workflow, UI based in use cases, object transactionality and a distributed cache, messaging, and queues.
  • Gave courses for professional training about this framework to a group of developers who used it.
  • Served as the referent for the persistence layer, refactoring, and optimizations to reduce query times.
  • Created the extension point to support other persistence frameworks.
  • Participated in the performance improvements of the whole application to make it productive.
Technologies: Java
2006 - 2007

Technical Leader

SoftAgrega S.A.
  • Led and coached a group of 10+ developers.
  • Served as the client's focal point and took responsibility for the code's quality.
  • Involved in the analysis and design processes.
  • Delivered functionality.
  • Consulted on technical and functional issues for the group.
Technologies: Java
2005 - 2006

Java Developer

Synapsys
  • Worked a Java web application (Synergi@4j) into the sales module. The web application was an administrative tool for power engine companies in Latin America.
  • Analyzed, designed, and coded new functionality for the project. The application had a rich domain interacting with several modules. It was developed on a proprietary framework.
Technologies: Java
2004 - 2005

Java Developer

LatinNet S.A.
  • Worked on a Java web application to manage traffic violations for the Buenos Aires government. The application was based in POJOs using Struts and JSP for the presentation layer.
  • Handled the persistence layer, which interacted with Oracle and stored procedures, which have most of the business and views.
  • Worked on the persistence layer, building a proprietary framework to manage views and PL/SQL to store and retrieve the domain objects.
  • Coached the development team and participated in the deployment process.
  • Led a team that worked on an e-learning platform for the Instituto Nacional de Educacion Tecnologica (INET), and Prefectura Naval Argentina.
Technologies: Java

Experience

Panera Bread (Kiosk, Web Ordering, Server)

I developed the Panera Server system, which involves an API that integrates different client applications, such as Panera Web Ordering and Panera Kiosk, with multiple third-party systems like CustomerHub, FirstData, and Paytronix. I covered multiple functional aspects, including product and stock management, user accounts, security, sales orders, rewards, payment platform, and asynchronous order processing.

Technologies used: Grails, Groovy Server Pages, iBATIS, JUnit, Oracle, Quartz, Spring Batch, Java Mail, JPos, and RabbitMQ.

Despegar.com – Flights

http://www.despegar.com.ar/vuelos/
I developed the flight booking back-end services which generate the dynamic form to be filled by the client, validate the content, and interact with several internal services to issue the flight online.

Technologies: Java, Groovy, Spring, Hibernate, Jetty, Git, Maven

XIOT Back-end Development

Working on the development of a Java back-end app.
The app transforms a different kind of files into a relational model, which is later queried.
The app's big challenge is to handle millions of rows and store them into different kinds of storage like documents or relational.

SpinPro

https://spinpro.io
Working on the development of a tool to communicate with different members of a club.
The app contains all the administration layers, associate the members to its clubs, and later share content among them.

Skills

Languages

Kotlin, Java 8, Java, Go, Java 9, Scala, XML, Groovy, SQL, CSS, HTML, JavaScript

Frameworks

Spring ORM, Spring Boot, Spring IoC, Guice, Spring JDBC, Spring MVC, Google Guice, Hibernate, Spring, TestNG, JUnit, Google Guava, Apache Struts, jBPM, Swagger, Activiti BPM, iBATIS, Spring Security, Grails, Apache Wicket, Play, Spark, Angular, Apache Spark, Spring Web Flow, AngularJS, GWT, Play Framework

Libraries/APIs

WhatsApp API, Spring REST, JDBC, Facebook Messenger API, REST APIs, Guava, Twitter API, Facebook API, Amazon Rekognition, Apache Lucene, MercadoPago API, Wit.ai, Telegram Messenger API, jQuery, jQuery UI

Tools

Git, Apache Maven, Eclipse IDE, Jenkins, Hudson, IntelliJ, Jetty, Net Promoter Score (NPS), CVS, GitHub, Apache JMeter, IntelliJ IDEA, Amazon Cognito, Amazon Simple Queue Service (SQS), JHipster, Apple Business Chat, json4s, IBM Watson, GitLab, Chrome Developer Tools, Gradle, Subversion (SVN)

Paradigms

RESTful Development, Service-oriented Architecture (SOA), Microservices, REST API Architecture, API Architecture, Web Architecture, Microservices Architecture, Unit Testing, Design Patterns, Object-oriented Programming (OOP), REST, Agile Software Development, AOP, Functional Programming, Kanban, Object-oriented Design (OOD), Test-driven Development (TDD), Functional Reactive Programming, Management, Pair Programming, XP, Scrum

Platforms

Jakarta EE, Eclipse, Twitter, Chatfuel, MacOS, Api.ai, Oracle, Windows, Unix, Linux, JVM

Storage

JSON, Oracle PL/SQL, PostgreSQL, Amazon S3 (AWS S3), Cassandra, MySQL, MongoDB

Other

WhatsApp, Spring DAO, Team Management, Chatbots, IBM Watson Speech-to-Text, Team Leadership, Team Mentoring, Apache Commons, APIs, Facebook, High Availability Disaster Recovery (HADR), Lean Development, Domain-driven Design (DDD), HAProxy, Hessian

Education

2001 - 2005

University Degree in System Engineering

Universidad Tecnologica Nacional - Buenos Aires

Certifications

JULY 2016 - PRESENT

Functional Program Design in Scala

EPFL (École polytechnique fédérale de Lausanne)

JUNE 2016 - PRESENT

Functional Programming Principles in Scala

EPFL (École polytechnique fédérale de Lausanne)

APRIL 2014 - PRESENT

Liderazgo de Equipos de Trabajo de Alto Desempeño

activePMO