Santiago Vanegas Gil, Software Developer in Prague, Czech Republic
Santiago Vanegas Gil

Software Developer in Prague, Czech Republic

Member since November 24, 2016
Santiago is a software engineer who's passionate about computer science, algorithms, and data structures. He's been working with Android since 2016 with a mostly US clientele and has some experience with simple back-end projects. Santiago has also led teams in Agile environments to bring features from conception to launch, working closely with BA/QA and other disciplines.
Santiago is now available for hire

Portfolio

Experience

  • Android 4 years
  • Test Automation 3 years
  • Kotlin 3 years
  • Retrofit 2 3 years
  • RxJava 2 3 years
  • Appium 2 years

Location

Prague, Czech Republic

Availability

Part-time

Preferred Environment

OS X, Android Studio, Atom, Git

The most amazing...

...thing I'm proud of is to have represented my university in 2 South American competitive programming contests.

Employment

  • Android Developer

    2017 - PRESENT
    STRV
    • Produced high-quality software that was unit tested, code reviewed, and checked regularly via continuous integration.
    • Implemented and iterated with the whole team in an Agile environment to bring features from conception to launch.
    • Led an Android team of four.
    • Clearly communicated with the client to achieve a soft and outstanding development process.
    • Contributed to an existing continuous integration framework by automating features as they are developed.
    • Worked closely with BA/QA team members to create test plans and to ensure that the issues are properly identified, fixed, and tested.
    • Served as the technical leader for a Scrum team and actively participated in grooming sessions, sprint planning, daily scrums, and sprint reviews.
    • Developed proof concepts for new and innovative ideas.
    • Spoke publicly in meetups about Android and mobile development.
    Technologies: Kotlin, RxJava, Firebase, Test Automation, Gradle, Jenkins, Architecture Components
  • Android Developer

    2016 - 2017
    CondorLabs
    • Designed, developed, and supported Android applications to track the continuing education of health professionals.
    • Improved the functionality of Android applications using model-view-presenter pattern and clean architecture.
    • Built components using ReactiveX (RxJava 2) and a dependency injection with Dagger 2.
    • Implemented Firebase push notifications for Android applications.
    • Created functional testing automated tasks with Gherkin notation using Gradle, Calabash, and Cucumber.
    Technologies: Android, Java, Gradle
  • Full-stack Developer

    2015 - 2016
    Talos Digital, Inc.
    • Developed AngularJS applications consuming RESTful web services.
    • Automated tasks for continuous integration and deployment with Jenkins.
    • Built and deployed applications using Docker containers.
    • Implemented RESTful APIs, services, and gems using Ruby on Rails.
    • Participated in a six-month internship program that was done in the company.
    Technologies: AngularJS, Ruby on Rails
  • Teacher Assistant in Data Structures and Algorithms II

    2015 - 2015
    EAFIT University
    • Taught students about data structures such as maps, sets, trees, queues, stacks, and lists.
    • Explained common computer science algorithms for graphs, dynamic programming, pattern matching, and ad hoc solutions.
    Technologies: Data Structures, Algorithms
  • Android Junior Developer

    2013 - 2014
    IdeasLab
    • Learned Android SDK basics and implemented simple Android applications.
    • Gained a basic knowledge set about graphic Android components and RESTful API usage from an Android app.
    Technologies: Android, Java

Experience

  • LegalZoom (Development)
    https://play.google.com/store/apps/details?id=com.legalzoom.kollaborate.prod

    I worked on this project for LegalZoom post-purchase customers to track and manage their business formation.

    For over a year, I led the Android team and worked on the development of the app from scratch. Every quarter, I added robust features involving API interaction, database management, asynchronous programming, dependency injection, and more. I also collaborated with various teams to maintain a clean application for customers and develop ways to convert web users to mobile.

    Thousands of users currently use this application.

  • Trisbee (Development)
    https://play.google.com/store/apps/details?id=cz.primaplatba.primaplatba

    I developed an online mobile payments solution that allows customers to pay on stores that don't offer terminal for a credit card. Users will be able to register their credit card within the app and then pay in stores without any extra fees. They will also be able to send money to other people (another essential feature of the product).

  • CE Broker (Development)
    https://play.google.com/store/apps/details?id=com.cebroker.app

    CE Broker allows health professionals to track continuing education.

    I improved the functionality and added new modules for an old Android application. I also migrated components to use better tools and technologies such as ReactiveX (RxJava 2), Model-view-presenter, clean architecture, Firebase push notifications, Dagger 2 (dependency injection), and Material Design.

    My team and I increased the stability of the application to 99% from 95%.

    Thousands of users currently use this application.

  • EverCheck (Development)
    https://play.google.com/store/apps/details?id=com.evercheck

    EverCheck allows employers to manage license compliance and monitor healthcare employees.

    I helped in the development process of the Android app from the beginning. I relied upon technologies such as ReactiveX (RxJava 2), dependency injection (Dagger 2), Model-view-presenter, Retrofit 2 for RESTful API consumption, and Material Design.

    Also, I wrote unit and functional tests using JUnit 4, Calabash, and Cucumber. I automated Gradle tasks that were related to tests. I also wrote a mock Ruby on Rails server to run locally while running functional tests.

  • EverCheck Wallet (Development)
    https://wallet.evercheck.com/

    EverCheck Wallet allows health professionals to update their heart card certifications.

    I participated in the development process of the application and implemented design features using Material Design guidelines. I relied upon various technologies and tools such as ReactiveX (RxJava 2), Retrofit 2, Model-view-presenter, and Dagger 2 for dependency injection.

    I also wrote unit and functional tests using JUnit, Calabash, Cucumber, and automated tasks using Gradle.

    The current Android version is not released to the public yet; it is in the final phase of development.

    (The link provided leads to the web app.)

  • TDJobs (Development)
    https://github.com/talosdigital/TDJobs

    I built a process abstraction API for a job marketplace. It handles the main logic and heavy lifting about offer management and sending invitations.

    TDJobs handles all common logic related to the demand for a service including offers and negotiation.

    Project Core Features:
    • Creating services and job postings
    • Handling roles (job owner, job offerer)
    • Handling the negotiation between the owner and the offerer
    • Searching for jobs and offerers
    • Job activation and deactivation

    It is a simple REST HTTP API so that other applications' back end can easily use it.

    I also wrote the Ruby on Rails code and the integration and unit tests using RSpec and Swagger documentation.

  • TaskFlex (Development)
    https://github.com/talosdigital/TaskFlex

    This is an example application to showcase how TDJobs service can be used. In this case, TaskFlex takes the TDJobs' job marketplace logic to build a complete application that allows owners to post jobs related to any kind of service, and taskers to apply or to be invited to a particular job.

    TaskFlex has two main components: it has a front end built in AngularJS and a back end developed in Ruby on Rails.

    I wrote the back-end code using Ruby on Rails with unit and integration tests using RSpec. I also developed most of the whole front-end application using AngularJS.

  • Competitive Programming Solutions (Other amazing things)
    https://github.com/svanegas/programming_solutions

    I have a GitHub repository where I uploaded several solutions to computer science problems that are proposed in several competitions and online judges. Mostly these solutions are written in C++, but there are some written in Java and Ruby. Each folder classifies solutions according to the online judge platform or competition.

Skills

  • Languages

    Java, Kotlin, C++, Ruby
  • Libraries/APIs

    RxJava 2, Retrofit 2, Android Architecture Components, Fabric
  • Tools

    Git, Android Studio, Atom, LaTeX
  • Paradigms

    Mobile Development, Scrum, Model View Viewmodel (MVVM), Test Automation
  • Platforms

    Android, Firebase, Linux, MacOS, Docker
  • Storage

    Realm, PostgreSQL, MySQL
  • Other

    Data Structures, Algorithms, Competitive Programming, Problem Solving, Back-end, Google Material Design, Android Data Binding, Leadership, Sauce Labs
  • Frameworks

    Ruby on Rails (RoR), Dagger 2, Appium, AngularJS

Education

  • Systems Engineer | Bachelor of Applied Science in Computer Engineering
    2012 - 2016
    EAFIT University - Medellín, Colombia

To view more profiles

Join Toptal
Share it with others