Scroll To View More
Alexis Hernandez

Alexis Hernandez

Culiacán, Mexico
Member since February 28, 2015
Alexis taught himself how to program while he was in high school, in an environment with very limited internet access and no guidance. Despite all of this, he fell in love with coding. He's a generalist who has worked in a lot of areas—from embedded devices to web applications. He sets a high bar for code quality and applies good coding and security practices. He's currently building scalable microservices with Scala and Play Framework.
Alexis is now available for hire
Portfolio
Experience
  • Java, 6 years
  • Web Architecture, 4 years
  • Scala, 4 years
  • PostgreSQL, 4 years
  • Web Scalability, 3 years
  • REST API Architecture, 3 years
  • Play Framework, 1 year
  • Angular, 1 year
Culiacán, Mexico
Availability
Part-time
Preferred Environment
Linux, IntelliJ, Git, Scala, Play, PostgreSQL
The most amazing...
...thing I've coded is an image-storage service that relies on S3 supporting multiple active regions where we stay up even with S3 outages in a region.
Employment
  • Scala Back-end Engineer
    2017 - PRESENT
    Samsung Strategy and Innovation Center
    • Implemented Amazon S3 resiliency across regions for the image storage service, we are not worried anymore if Amazon S3 goes down in a region.
    • Implemented TCP and TLS support for the LwM2M (IoT) protocol used for device management (Goo.gl/GmsqaU).
    • Contributed to multiple-active regions project where we use multi-master asynchronous database replication across different regions in the world.
    • Contributed to the Device Management Approved List, where an organization can whitelist the devices that should be able to connect to the cloud (Goo.gl/NQnCDh), used conflict-free replicated data types (CRDT) to get the data replicated across regions.
    Technologies: Scala, Java, MySQL, Cassandra, Elasticsearch, MongoDB, AWS, Akka, Play Framework, Slick, Anorm, Kafka, Scalactic, LwM2M, CoAP, Californium, Leshan, IoT
  • Software Architect | Developer
    2017 - 2017
    Ailytic (via Toptal)
    • Built authorization and authentication modules.
    • Designed a way for applying database migrations for giving disposable versions of the system to users.
    • Implemented core modules for UI testing using Selenium.
    • Implemented modules for integrating data from CSV files.
    • Designed a way for creating integration tests using in-memory database implementations.
    Technologies: Java, Tomcat, MySQL, jQuery, jQWidgets
  • Big Data Consultant
    2017 - 2017
    Praxis
    • Helped in the architectural design for the core of a big data pipeline processor.
    • Designed a domain specific language for type safety while writing Hive queries and Spark transformations.
    • Created a code generator for our domain specific language (based on Hive tables).
    • Redesigned how to integrate the data pipeline processors.
    • Improved team coding practices to get better benefits while using Scala.
    Technologies: Scala, Apache Spark, Hadoop, Hive, Cloudera, Oozie, Yarn
  • Java/JavaScript Developer
    2016 - 2017
    TekTorch (via Toptal)
    • Designed the bases for creating integration tests using the Jersey Test Framework.
    • Integrated dependency injections.
    • Integrated Stripe and Stripe Connect APIs for handling payments.
    • Implemented a feature to store information for auditing purposes of every request.
    • Decoupled several existing services.
    • Integrated a bcrypt algorithm for storing passwords securely.
    Technologies: Java, JPA, Jersey 2, Stripe, JAX-RS, MySQL, Guice, Tomcat, Jersey Test Framework, jOOQ, PostgreSQL, PostGIS
  • Software Engineer
    2015 - 2017
    Kueski
    • Supported the website Kueski.com.
    • Created and maintained scalable internal applications.
    • Supported the Android team by providing the required knowledge of the product and doing regular code reviews.
    • Encouraged secure coding standards to the engineering team.
    • Encouraged good coding practices through regular code reviews.
    • Created and maintained asynchronous APIs to control the maximum allowed concurrent requests to certain APIs from external providers.
    • Interviewed new candidates for Android positions.
    • Designed interview challenges for the new candidates.
    Technologies: Scala, Ruby, MongoDB, MySQL, PostgreSQL, Java, Finatra, Sinatra, Sequel, Jira, Phabricator, Arcanist, Git, HTML5, AngularJS, JavaScript, Slick, Ansible, Bash, Bitbucket, Facebook API, Moment.js, Bower, Bundler, AWS, MiniTest, PDFKit, Pony
  • Software Developer
    2015 - 2015
    Oracle
    • Maintained the real application cluster code base.
    • Fixed bugs.
    Technologies: C, Linux, Bash, Scripting, Assembler, Vim, GDB, Strace
  • Developer
    2014 - 2015
    SAC
    • Developed cryptographic modules.
    • Built web applications using Java, Struts, and MySQL.
    • Made rich internet applications that uses biometric devices.
    • Updated the architectural design of web applications.
    • Trained new developers.
    • Performed local server administration.
    • Managed and assigned tasks to other developers.
    • Updated the architecture design of legacy web applications.
    Technologies: Java, Applets, HTML, Struts, JavaServer Pages, Taglibs, Tomcat, Cryptography, MySQL, JavaScript, jQuery, jQuery UI, Git, Neurotechnology SDK
  • Developer | Architect
    2011 - 2015
    Freelance Work
    • Created desktop applications based on customer requirements, mostly for automating tasks.
    • Built web crawlers mostly for organizing and retrieving specific data based on customer requirements.
    • Developed applications using embedded devices based on customer requirements.
    • Created web applications based on customer requirements.
    • Developed Android applications based on customer requirements.
    Technologies: Raspberry Pi, Arduino, Java, C, Ruby, PostgreSQL, MySQL, JavaServer Faces, Spring, PrimeFaces, MyBatis, Git, JUnit, Spring Security, Cloudinary, Android, J2ME, Apache HTTP Components
  • Founder
    2013 - 2014
    Epic Entertainment Systems
    • Created and maintained the KaraOTec application which is a Java-based desktop application for karaoke entertainment systems working in Linux.
    • Designed the license key generator for the KaraOTec application.
    • Created new projects as required by external customers.
    Technologies: Java, Swing, VLCJ, ProGuard, Eclipse
Experience
Skills
  • Languages
    Scala, Java, Ruby, JavaScript, SQL
  • Paradigms
    Web Architecture, API Architecture, REST API Architecture, Back-end Architecture, Functional Programming, Object-oriented Design (OOD), Agile Software Development, Design Patterns
  • Platforms
    Web, Linux, JEE, Amazon Web Services (AWS), Apache Kafka
  • Other
    Data Structures, Web Scalability, Security, APIs, Algorithms, Bootstrap UI, Cryptography, Anorm
  • Frameworks
    AngularJS, Sinatra, Bootstrap, JUnit, JSON Web Tokens (JWT), Jersey, Angular, Play Framework, Akka, Finagle
  • Libraries/APIs
    Slick, Sequel, JAX-RS, Scalactic, Stripe API
  • Tools
    Git, ScalaTest, AWS SQS, Finatra
  • Storage
    MySQL, PostgreSQL, NoSQL, MongoDB, SQLite, AWS S3
Education
  • Bachelor's degree in Computer Engineering
    2010 - 2015
    Instituto Tecnológico de Culiacán - Culiacán, Mexico
I really like this profile
Share it with others