Hazkiel Gabriel

me@hazkiel.com

About Me

An accomplished software engineer specializing in secure and scalable architecture with extensive experience in the full software design life cycle.

Well versed in technology with a proven ability to solve complex business problems by building reusable and cost-efficient systems.

NodeJS expert, Game developer, RaspberryPI enthusiast... but mostly, an extremely fast learner.

Experience

Freelancing

December 2014 - Present

Worked and consulted on multiple types of projects including but not limited to:

  • Simple business websites
  • Fully fledged SaaS platforms
  • iOS and Android applications

Tech: Javascript, Java/JavaEE, Objective-C, SQL, Firebase...

Senior Back End Engineer at Synopsys, Inc.

January 2017 - Present

Since the Synopsys acquisition of Cigital and Codiscope, I've been working on building an eLearning platform where developers are offered courses on software security and industry best practices. The platform currently serves thousands of users and offers organization capabilities that allow clients to monitor their cohorts as well as individual curriculum progress.

My responsibilities include:

  • Designing/Implementing/Testing back end systems like micro-services and daemons
  • Reviewing technical plans and pull requests submitted by other developers
  • Planning and executing large scale database migrations or incremental schema updates
  • Identifying choke points and making sure the platform remains scalable

Tech: NodeJS, micro-services, PostgreSQL, MongoDB, RabbitMQ, Redis...

Unity Game Development

July 2017 - August 2018 (1 year)

Having learnt coding in C# and using Unity3D in my free time, I worked on a multi-platform infinite runner / side-scrolling game.

Senior Back End Engineer at Codiscope

April 2015 - January 2017

Codiscope's mission is to improve the quality of software everywhere by creating tools that work throughout the entire software life cycle, rather than only during test phases. The main software offering was Jacks, a static code analysis tool that specialized in detecting security issues by scanning a user’s code on major repository sites like GitHub and BitBucket.

What I did:

  • Prototyped and wrote the first version of the static code analysis tool for the Javascript language
  • Designed and implemented REST APIs that allow clients to interface with the tool
  • Wrote a custom dispatching system that would load jobs from a RabbitMQ queue and launch Docker containers
  • Implemented OAuth user signups using GitHub and BitBucket accounts
  • Reviewed pull requests submitted by other developers

Tech: NodeJS, OAuth, MongoDB, RabbitMQ, Docker...

Lead Back End Engineer at Rakuten Loyalty

April 2014 - February 2015

Rakuten Loyalty, part of Rakuten (#1 e-commerce company in Japan), was one of the fastest growing technology companies in Boston and specialized in cloud-based technology that enabled major loyalty programs worldwide to monetize and reward their members for their everyday online activity.

My job consisted of:

  • Managing a team of developers responsible for the platform's core systems
  • Building cloud-based scalable systems that deal with big data
  • Implementing and maintaining the User Rewards platform
  • Writing custom reporting daemons that perform map/reduce and aggregation jobs on big data systems
  • Optimizing database queries with adequate data schemas and indexing

Tech: NodeJS, MongoDB, ElasticSearch, RPC, MemCached...

Software Engineer at Rakuten Loyalty

May 2012 - April 2014

Rakuten Loyalty, part of Rakuten (#1 e-commerce company in Japan), was one of the fastest growing technology companies in Boston and specialized in cloud-based technology that enabled major loyalty programs worldwide to monetize and reward their members for their everyday online activity.

During my time here, I designed and implemented the following:

  • Identity and access management system to handle user authentication and authorization
  • Business rule manager using Nools (Javascript framework similar to Drools in JavaEE)
  • Fraud/invalid activity detection plugin
  • Custom MongoDb wrapper for NodeJS
  • Provisioning system which provided a centralized configuration solution
  • Network affiliates link generation daemon for the following networks: Google Affiliate Network, LinkShare, Commission Junction

Software Engineer at Orolix

August 2010 - November 2011

Orolix was a company with headquarters in Palo Alto, and offices in Sao Paulo and Beirut. It started off as an ISP and Portal selling prepaid mobile top-ups and offering a connection manager for 3G Modems. This software solution was called Orolix Communicator and it served more than 1 million users across Brazil.

My job was mostly on the server side and allowed me to work on the following projects :

  • The company website that offers free downloads of the Orolix Communicator
  • The Portal website used by the Orolix Communicator users to check their connection usage and statistics.
  • Customizable Anti- Fraud solution using a rules engine (Drools) and configurable rule files defined using the rules DSL. The fraud detection rules were based on user info like: IP, geographic location, credit card info...
  • Various servlet filters: logging, auditing, security (roles and permissions)...
  • Maintaining the Orolix Communicator software by adding new 3G dongle drivers and fixing bugs

Tech: C++, Qt, Java EE, JSF, Hibernate, Seam, RestEasy, Drools, MongoDb, MySQL, Maven, JBoss AS, Glassfish, Tomcat...

Education

Saint Joseph University (ESIB)

Bachelor of Engineering (B.E.), Computer Software Engineering, 2005 - 2010

Saints Coeurs

French Baccalaureate with emphasis on Mathematics, 2005

Languages

English

Native or bilingual proficiency

French

Native or bilingual proficiency

Arabic

Native or bilingual proficiency