Chris_Mekarski

Full-Stack Engineer

Email:
Location:
Ottawa, Canada

Hi_

I'm a full-stack web developer for the CRA in the call centre services division, working hard everyday to improve Canadian's experiences via call centre agent tools and manuals.

Download Resume (PDF)

Resume_

Education

University of Ottawa
Honours BSc in Computer Science

2012 - 2016

Studied various topics such as data structures, algorithm analysis and design, computer networking, computer paradigms, image processing, web development, and databases.

Employment

Canada Revenue Agency | Senior Programs Officer (SP-08)

Nov 2018 - Present | Ottawa, ON

After piecing together summernote into an editor supporting WET2 and WET4 with a simple backend saving system, my superiors were impressed enough to keep and promote me to continue adding features and eventually replace Adobe Contribute which our content creators currently use.

Canada Revenue Agency | Programs Officer (SP-07)

Apr 2018 - Nov 2018 | Ottawa, ON

During this time I lead the creation of multiple re-designed pages for one of our most used manuals. For this project I created a simple decison map generator application and a premilimary version of a WISIWYG web content editor for WET4 based on summernote.

Canada Revenue Agency | Junior Project Officer (SP-05)

Aug 2016 - Apr 2018 | Ottawa, ON

In addition to web author support requests, I was the lead developer of 3 web applications; a dropbox like file storage system, a partnership and interaction tracking system, and a survey/form creation tool. I also created several helpful tools/scripts to automate manual processes.

Canada Revenue Agency | University Student (SU-03)

Jul 2015 - Aug 2016 | Ottawa, ON

My primary role was to complete web author support requests and compare/push changes to production. However I was able to quickly gain the privlege to work alongside my supervisor on the addition of many features to one of our existing web applications, a learner's examination system.

self assessed knowledge

html5 90%

Bootstrap, WET4 90%

JavaScript ES5 85%

jQuery 85%

SQL, PostgreSQL 85%

linux, bash 80%

css3 75%

WCAG, Accessibility 75%

PHP 75%

Networking 75%

NodeJS 70%

Git 70%

Data types, Algorithms 70%

Design, Usability 70%

Java, AngularJS 60%

adobe photoshop, tasteful memes 50%

My projects_

project-img

Page maintenance tool



Used stack:

  • Lead Developer
  • WET4
  • Microsoft IIS
  • jQuery - Frontend
  • Node.js - Backend
  • Express.js
  • Cheerio.js
project-img

PDF Generator



Used stack:

  • Lead Developer
  • Node.js
  • Puppeteer
  • Web Editor
project-img

Content directory system

This is a homepage for each individual manual which includes a "Google like" search system. However due to our manuals being concurrently accessed by 2000+ people and sharing a virtual server with the entire rest of the Intranet, most of resource intensive tasks are done on the client.



Used stack:

  • Lead Developer
  • WET4
  • Microsoft IIS
  • jQuery - Frontend
  • JScript - Backend
  • JSON
  • Isotope.js
  • Fuse.js
  • Elasticlunr.js
  • Select2.js
project-img

Web Editor & CMS

In early 2018 and still a Junior Project Officer (SP-05), I was involved in a guide re-design project. At the time our authors were using Adobe Contribute to edit existing web-pages themselves. It was known going into this project that Contribute will not work in the newer WET4 template, and that my team and I would need to convert Word docs to HTML and style it. In my spare time I began work on a preliminary WYSIWYG web editor using Summernote, CodeIgniter, and PostgreSQL. In time I was able to greatly simplify the proccess and create it as a production use replacement to Adobe Contribute, and to where I now only see Word docs to debug the Editor's pasting functionality.

Using stack:

  • Lead Developer
  • WET4
  • Microsoft IIS
  • NTLM Single sign-on
  • jQuery
  • Summernote.js
  • PHP
  • CodeIgniter
  • JSON
  • PostgreSQL
project-img

Decison map creator



Used stack:

  • Lead Developer
  • WET4
  • Microsoft IIS
  • NTLM Single sign-on
  • jQuery - Frontend
  • JScript - Backend
  • PostgreSQL
project-img

Survey and form system

This project started off as a pipe dream my team has had for the longest time. Since it would eliminate the need for multiple application governance/security review registrations. The agency already had a survey builder but lacked many features, looked like from the 90's, and ran under variance, and used no template, making it look like the dawn of the internet. During my off time I would gradualy work to make this new system a reality. Close to completion I got the usability team involved, and with their testing and feedback we greatly improved ease of use.

Used stack:

  • Lead Developer
  • WET4
  • Microsoft IIS
  • NTLM Single sign-on
  • jQuery - Frontend
  • JScript - Backend
  • PostgreSQL
project-img

Partnership System

This application's purpose is to track all partnerships with various organizations within Canada. This includes any interactions and actvities, and is used to aid in reporting and follow-ups.



Used stack:

  • Lead Developer
  • WET4
  • Microsoft IIS
  • NTLM Single sign-on
  • jQuery - Frontend
  • JScript - Backend
  • PostgreSQL
project-img

Storage System





Used stack:

  • Lead Developer
  • WET4
  • Microsoft IIS
  • NTLM Single sign-on
  • jQuery - Frontend
  • JScript - Backend
  • PostgreSQL
project-img

Examination System

This was an existing application made before I joined the team. It provides training facilitators an easy way to test new agents entering into the agency. I worked alongside my supervisor to implement many new feaures requested by the client. Finally, during the slow season in December of 2017 I preemptively converted the application from WET2 to WET4 in my spare time.

Used stack:

  • WET4
  • Microsoft IIS
  • NTLM Single sign-on
  • jQuery - Frontend
  • JScript - Backend
  • PostgreSQL

My personal projects_

project-img

This website

This website is locally hosted using an NGINX Docker container configured with a Let's Encrypt SSL certificate and proxied through Cloudflare for a free global CDN.



Used stack:

  • HTML
  • CSS
  • JavaScript
  • Docker
  • NGINX
  • Cloudflare
project-img

Home Lab

Once Bell FTTH became available at my address I decided to re-purpose my home PC into a server like setup. I chose Proxmox so that I can easily manage any VM's that I may need. First I wanted to bypass the HomeHub 3000 provided by Bell so with a $50 PCI-E fibre card I compiled a kernel extension to support up to 2.5Gbps. Next I setup pfSense to connect to Bell via PPPOE and act as the LAN router. The neat thing about this is I have 1.5Gbps available on the server without the need for expensive 10GbE equipment. Next while I save up for a laptop and docking station, I setup Windows with PCI-E passthrough for the GPU. Lastly multiple LXC containers (Ubuntu, Debian, etc) can be spun up at any time with very little overhead, as well as any number of community made and updated Docker containers.

Used stack:

  • Proxmox (based on Debian)
  • Docker
  • Portainer
  • Windows 10
  • LXC
  • pfSense
  • Bell -> Dell N20KJ
project-img

Automotive Remote Start Self-Install

Before now I could have been Canada's Worst Handyman, but everyone starts from somewhere. However with a lot of wire taping and splicing while hanging upside down, I was able to successfully install a smartphone enabled remote start system for my standard transmission car.
Next up: Reverse engineer the app's API calls to work with Google Assistant (possible security concern though).

Used stack:

  • EVO-ONE
  • EVO-START2
  • Automotive Relay
  • Primary Wire
  • Crimpers
  • T-Tap Connectors
  • Butt Splice Connectors
  • 1-Amp Diodes