Tech

Experience

Mysa

Software Architect (Cloud) - St. John's, NL, Canada

Aug. 2019 - Present (4+ years)

20+ AWS Services
Microserviced/Monolithic
Serverless/Classic
Big Data
Data Science & ML
Monorepo DevOps
IoT
IaC
Typescript
Python
  • Designed a lightweight and novel approach for replicating, ETLing, cataloging and performing extensive and complex queries on Terabytes of DynamoDB data at almost no cost
  • Automated and unified Mysa's manual cloud deployments, by developing a custom framework and tooling for orchestrating deployments across different microserviced cloud applications in tandem, using Lerna, PNPM, GitHub API and AWS CDK
  • Invented an industry leading droop correction algorithm for Mysa's thermostats, that makes it one of the very best line-voltage thermostats in terms of high-load thermal accuracy
  • Developed an Express-inspired framework over AWS CDK that significantly streamlines the complexity of developing serverless API endpoints on multiple units of infrastructure
  • Devised an approach to achieve 100% monitoring coverage of 1000s of lambda functions within days, at near-zero cost

Google

Software Engineering Intern - Kirkland, WA, US

Apr. 2019 - Jul. 2019 (3 Months)

Sass Compiler
Transpilers
Graph Traversal
DevOps
Dart
Polymer
  • Constructed an automated canonical definition of multiple sources of code, by implementing a language parser based on an Abstract Syntax Tree in Dart, and integrating it with a filesystem watcher
  • Decreased the running time of integration tests from ~2h30mins to ~30mins, by capitalizing on the caching of repeated operations across parallel tests

Mysa

Software Developer - St. John's, NL, Canada

Jul. 2018 - Apr. 2019 (10 Months)

Data Science & ML
Docker
AWS
Python
  • Pioneered a machine learning pipeline using Scikit-learn, and ran it on AWS Batch, Step Functions and DynamoDB, to quarter the relative error of time-to-setpoint prediction from 58% to 13% and boost energy savings
  • Developed droop correction models, by programming Arduino loggers for data collection, aggregating data using Pandas, and applying feature+model selection using Scikit-learn

Memorial University of Newfoundland

Undergraduate Research Assistant - St. John's, NL, Canada

May 2018 - Aug 2018 (4 Months)

Data Science & ML
Neural Networks
Boosting
Tensorflow
Python
  • Investigated enhancements to generative ML models that increase entropy of output distributions, by applying Boosting techniques to GANs
  • Proposed novel methods of encoding sequential data, such as music, in a form that optimises for GANs and other non-sequential models

HeyOrca!

Junior Web Developer - St. John's, NL, Canada

May 2017 - Jun 2018 (1 year)

React
Laravel
Web Sockets
Asynchronicity
Webpack
Doctrine ORM
JavaScript
PHP
  • Quadrupled the speed of critical services through managed asynchronization of Laravel queues, optimization of data structures and logic refactoring
  • Rebuilt and enhanced the frontend using ReactJS, along with Web Sockets and REST APIs, in order to create a more performant and resilient SPA
  • Reduced the SPA’s bundle size by ~40%, through proper management of dependencies and Webpack builds for all frontend micro-services

Certifications & Publications

AWS Solutions Architect - Associate

Awarded May 2021

Earners of this certification have a comprehensive understanding of AWS services and technologies. They demonstrated the ability to build secure and robust solutions using architectural design principles based on customer requirements. Badge owners are able to strategically design well-architected distributed systems that are scalable, resilient, efficient, and fault-tolerant.

Improving Bacterial sRNA Identification By Combining Genomic Context and Sequence-Derived Features

Computational Intelligence Methods for Bioinformatics and Biostatistics (CIBB) - 2021

Mohammad Sorkhian, Megha Nagari, Moustafa Elsisy & Lourdes Peña-Castillo

Bacterial small non-coding RNAs (sRNAs) are ubiquitous regulatory RNAs involved in controlling several cellular processes by targeting multiple mRNAs. The large diversity of sRNAs in terms of their length, sequence, and function poses a challenge for computational sRNA prediction. In this paper, we combine ensemble learning over genomic context features with sequence-derived features to invent a model with demonstrably higher predictive performance according to measurements of AUPRC against current state of the art models.

Awards

MUN University Medal of Academic Excellence - Computer Science

This medal is awarded to a student of the highest level of academic achievement in a convocating class of the Department of Computer Science. This medal has been awarded with a cumulative academic average of 96.5%

MUN Faculty of Science Book Prize - Computer Science 2017

Each year, every department in the Faculty of Science nominates a student who is not graduating in that year to win this award based on demaonstrated academic excellence.

MUN Faculty of Science Dean's List

  • 2016
  • 2017
  • 2018

Hackathons Won

  • HackFrost 3.0 (2023): Viridis
  • Startup Weekend 2017: OceanWeb
  • Hacking Health 2017: PatientMe

Projects

GANs Reels

Checkout this musical piece by a Convolutional Neural Network! At the GANs n Reels project, we encoded sequential data, such as music, into spatial data in order to investigate whether such encoding would help a CNN learn relationships within and across bars of a musical piece! This would then be used in a Generative Adverserial Network to generate novel pieces of music :) If you would like to learn more about GANs n Reels, checkout our project page here where you can listen to the actual pieces, or checkout our ArXiv paper here.

Sheet Music for "The Breezeway"The BreezewayGANs n Reels

ML Rock-Paper-Scissors

This is a lightweight project that compares a number of common statistical, procedural and Deep Learning algorithms. It started off as a web-based demo, but I last left off in the middle of a migration to Python, since that was giving me better access to statistical and ML libraries. I am looking at regenerating and posting the results from this experient, but in the meantime you can find the source code for this project here.

Education

Memorial University of Newfoundland

B.Sc. (Hons), Computer Science

2016-2019

GPA: 4.0

Cumulative Average: 96.5%


Coming Soon!

Nullam et orci eu lorem consequat tincidunt vivamus et sagittis libero. Mauris aliquet magna magna sed nunc rhoncus pharetra. Pellentesque condimentum sem. In efficitur ligula tate urna. Maecenas laoreet massa vel lacinia pellentesque lorem ipsum dolor. Nullam et orci eu lorem consequat tincidunt. Vivamus et sagittis libero. Mauris aliquet magna magna sed nunc rhoncus amet feugiat tempus.

Coming Soon!

Lorem ipsum dolor sit amet, consectetur et adipiscing elit. Praesent eleifend dignissim arcu, at eleifend sapien imperdiet ac. Aliquam erat volutpat. Praesent urna nisi, fringila lorem et vehicula lacinia quam. Integer sollicitudin mauris nec lorem luctus ultrices. Aliquam libero et malesuada fames ac ante ipsum primis in faucibus. Cras viverra ligula sit amet ex mollis mattis lorem ipsum dolor sit amet.

Contact

Elements

Text

This is bold and this is strong. This is italic and this is emphasized. This is superscript text and this is subscript text. This is underlined and this is code: for (;;) { ... }. Finally, this is a link.


Heading Level 2

Heading Level 3

Heading Level 4

Heading Level 5
Heading Level 6

Blockquote

Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.

Preformatted

i = 0;

while (!deck.isInOrder()) {
    print 'Iteration ' + i;
    deck.shuffle();
    i++;
}

print 'It took ' + i + ' iterations to sort the deck.';

Lists

Unordered

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Alternate

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Ordered

  1. Dolor pulvinar etiam.
  2. Etiam vel felis viverra.
  3. Felis enim feugiat.
  4. Dolor pulvinar etiam.
  5. Etiam vel felis lorem.
  6. Felis enim et feugiat.

Icons

Actions

Table

Default

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Alternate

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Buttons

  • Disabled
  • Disabled

Form