iToto's Blog

A Montreal based full-stack web developer who loves learning and trying out new things. This blog is my attempt to document my work as well as a place to discuss ideas or topics that I find interesting. Feel free to follow me on linked social networks.

Profile

Extensive knowledge in Computer Science obtained by a Bachelors in Computer Science from Concordia University along with a DEC in Computer Science from John Abbott College. I am a passionate software developer who is always dedicated in everything that I work on. Most of my experience lies in web application development – specializing in API design and development – although I have done some mobile application development. I recently ventured into management and have been functioning as an Engineering Manager at InVision since 2017. I am always eager to learn and like to find myself out of my comfort zone – this is how I can maximize my personal growth.

Designing software and managing projects is by far my favorite activity. From drawing up high level API designs, to creating project specs capacity charts and project plans. I also still find myself working on side projects. This helps me to stay current with the latest and greatest in the world of software.

Having worked with several startups – both early late-stage – I have always found myself pulled towards them. The rush of moving fast and being able to wear multiple hats keeps me on my toes and pushes me to do my best.


Work Experience

InVIsion (Remote) – Sr. Software Engineer / Engineering Manager, July 2017 - Present

As a software engineer I work on the growth team which is focussed on user retention and acquisition. I worked on designing and implementing a back-end service to manage our new Onboarding flows.

As an engineering manager I work mange our seven engineers and help give them the tools they need to be affective in their work and help level up their careers at InVision. My success means that my team is able to operate in an effective and dependable manner. All my engineers know the priorities and work together to ship our work on time and with as little issues as possible. I am also responsible for our team's operational readiness. This means I have the responsibility to ensure all of our teams' services are well monitored and built in our distributed system to ensure we run with a minimal amount of downtime.


Cloudflare (San Francisco) – Web Engineer / Systems Engineer, Nov 2015 - July 2017

As a web engineer, I work on our public API. This API is mostly written in PHP, coupled with stored procedures in a PSQL data store. My job is to maintain legacy code (improving it when possible) and to design and implement new features. We also use a custom framework which requires us to improve the core of the application to make it more flexible and less tightly coupled.

As a systems engineer I worked on the billing team, working on all aspects of the billing application that handled all of Cloudflare customer subscriptions. This included creating and updating customer subscription, issues credits for cancellations, asynchronous processes used to calculate usage based billing and report generations.


Sociable Labs (Montreal/San Francisco) – Sr. Backend Developer, Jan 2014 - Oct 2015

Responsible for designing, implementing and maintaining RESTful APIs for the Sociable Labs SaaS platform. Contributing developer on the Sociable Labs iOS SDK.


Party Stream (Montreal) – Founder, September 2012 - Present

Party Stream is a photo sharing application that allows friends and family to easily share media from an event. I designed and developed the REST API and manage the team that works on the mobile applications for different platforms.


Mira Geoscience Inc. (Montreal) – Software Developer, March 2013 - December 2013

Designed and developed web applications for data management and visualization for both Mira Geoscience and one of their high profile clients. Specialized in REST API design and development.


Lupo One Productions Inc. (Montreal) – IT Consultant, Sept. 2010 – Present

Worked as an I.T. consultant for a musical artist management company. Created and managed artist websites, social network pages etc. Worked closely with the manager to efficiently execute given tasks.


Mind Geek (Formally Manwin) (Montreal) – Software Developer, Sept. 2012 - March 2013

Work on the backend and content management system of a high traffic website. Specifically, developed, implemented and maintained object oriented backend applications with PHP and MySQL. Performed code verification to determine recommendations for adaptation in order to produce and launch specific parts of the site properly. Designed and developed new features for the site.


Made Media Inc. (Montreal) – Software Architect/Full-Stack Engineer, May 2011 - Sept. 2012

Lead developer and architect of Made Media’s SaaS and MDM platform. Specialized in the design and implementation of: web service, web portal, communication protocol, payment processing integration and cross platform development for mobile devices used for face-to-face marketing. Managed tasks for multiple clients and delegated to subordinates. Designed software features based on clients‘ demands followed by the integration of those features into the Made platform and finally deployed and supported the product.


ToretoTech S.E.N.C. (Montreal) – Co-Founder, 2009 - 2012

Software Development, managing multiple development projects along with business administration for the company. Developed custom application that integrated a PHP front-end with a .NET application bridge coded in C# - running through a WCF service – that would handle requests with a third party accounting software. All systems developed usually tied to a MySQL relational database designed and implemented in house.


Tropotel Inc. (Montreal) – Research and Development, 2007-2009

Development of a web system that supplies message management to it’s customers. Was responsible with the research of new services for the system that handled custom faxing and emailing distributions for our customers, followed by the development and implementation of those services. This included designing and implementation of a relational database, designing and implementation of the communication protocol between our new system and our legacy system.


Dev XP

Golang (60%)
PHP 5.x (80%)
Objective-C (30%)
Swift (30%)
Node.js (60%)
HTML5/CSS3 (40%)
Java (30%)
C, C++, C# (30%)
Ruby/Rails (20%)
Python (20%)
Docker (60%)
Linux (60%)
Git/GitHub (80%)
PostgreSQL/MySQL/MS SQL Server 2008 (50%)
MongoDB (60%)
Laravel 4 (70%)
CodeIgniter 2.x (80%)
REDIS/Memcached (40%)
Apache (60%)
iOS (30%)
 

XP Guide:

  • 100% Wrote the book on it.
  • 90% Could have written the book, but I didn't.
  • 80% Deep understanding of corner cases and esoteric features.
  • 70% Understanding and (appropriate) usage of most lesser known features.
  • 60% Can develop large programs and deploy new systems from scratch.
  • 50% Can develop/deploy larger programs/systems using all basic (w/o book) and more esoteric features (some w/ book, some without)
  • 40% Can develop/deploy medium programs/systems using all basic (w/o book) and a few esoteric features (w/ book). Understands enough about internals to do nontrivial troubleshooting.
  • 30% Can utilize basic features without much help, manage a small installation competently.
  • 20% can write hello world without looking at a book, kind of figure out how a system works, if necessary.
  • 10% Can read programs, make small changes to existing programs, or make adjustments to already installed systems, w/book handy.
  • 0% No experience.