Last active
May 29, 2024 03:28
-
-
Save hailelagi/15fa1fabcc10f1dfc48fb6ebe8cb4eba to your computer and use it in GitHub Desktop.
resume.tex
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
\documentclass[a4paper,20pt]{article} | |
\usepackage{latexsym} | |
\usepackage[empty]{fullpage} | |
\usepackage{titlesec} | |
\usepackage{marvosym} | |
\usepackage[usenames,dvipsnames]{color} | |
\usepackage{verbatim} | |
\usepackage{enumitem} | |
\usepackage[pdftex]{hyperref} | |
\usepackage{fancyhdr} | |
\pagestyle{fancy} | |
\fancyhf{} % clear all header and footer fields | |
\fancyfoot{} | |
\renewcommand{\headrulewidth}{0pt} | |
\renewcommand{\footrulewidth}{0pt} | |
% Adjust margins | |
\addtolength{\oddsidemargin}{-0.530in} | |
\addtolength{\evensidemargin}{-0.375in} | |
\addtolength{\textwidth}{1in} | |
\addtolength{\topmargin}{-.45in} | |
\addtolength{\textheight}{1in} | |
\urlstyle{rm} | |
\raggedbottom | |
\raggedright | |
\setlength{\tabcolsep}{0in} | |
% Sections formatting | |
\titleformat{\section}{ | |
\vspace{-10pt}\scshape\raggedright\large | |
}{}{0em}{}[\color{black}\titlerule \vspace{-6pt}] | |
%------------------------- | |
% Custom commands | |
\newcommand{\resumeItem}[2]{ | |
\item\small{ | |
\textbf{#1}{: #2 \vspace{-2pt}} | |
} | |
} | |
\newcommand{\resumeItemWithoutTitle}[1]{ | |
\item\small{ | |
{\vspace{-2pt}} | |
} | |
} | |
\newcommand{\resumeSubheading}[4]{ | |
\vspace{-1pt}\item | |
\begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r} | |
\textbf{#1} & #2 \\ | |
\textit{#3} & \textit{#4} \\ | |
\end{tabular*}\vspace{-5pt} | |
} | |
\newcommand{\resumeSubItem}[2]{\resumeItem{#1}{#2}\vspace{-3pt}} | |
\renewcommand{\labelitemii}{$\circ$} | |
\newcommand{\resumeSubHeadingListStart}{\begin{itemize}[leftmargin=*]} | |
\newcommand{\resumeSubHeadingListEnd}{\end{itemize}} | |
\newcommand{\resumeItemListStart}{\begin{itemize}} | |
\newcommand{\resumeItemListEnd}{\end{itemize}\vspace{-5pt}} | |
% resources: | |
% https://stackoverflow.blog/2020/11/25/how-to-write-an-effective-developer-resume-advice-from-a-hiring-manager/ | |
% https://www.reddit.com/r/EngineeringResumes/wiki/index | |
% https://careercup.com/resume | |
% TODO: rephrase to focus on accomplishments and impact vs responsibilites | |
% TODO: quantifiy accomplishments | |
% TODO: do more cool stuff !!!! | |
%----------------------------- | |
%%%%%% CV STARTS HERE %%%%%% | |
\begin{document} | |
%----------HEADING----------------- | |
\begin{tabular*}{\textwidth}{l@{\extracolsep{\fill}}r} | |
\textbf{{\LARGE Haile Lagi}} & Email: hailelagi@gmail.com\\ | |
\textbf{} www.hailelagi.com & Github: github.com/hailelagi \\ | |
\end{tabular*} | |
%-----------EDUCATION----------------- | |
\vspace{3pt} | |
\section{Skills} | |
\resumeSubHeadingListStart | |
\resumeSubItem{Languages}{~~~~~~Elixir, Go, Rust, SQL} | |
\resumeSubItem{Technologies}{~~~Linux, Kubernetes, Docker, RabbitMQ, PostgreSQL} | |
\resumeSubHeadingListEnd | |
\vspace{1pt} | |
\section{Experience} | |
\vspace{2pt} | |
\resumeSubHeadingListStart | |
\resumeSubheading{Catalyx.io (Financial Exchange)}{Calgary, Alberta, Canada (Remote)} | |
{Software Developer}{Nov 2022 - Dec 2023} | |
\resumeItemListStart | |
\resumeItem{Order Execution Engine} | |
{Owned major parts of the rewrite/re-architecture of the event-driven order execution engine service including a new order router and the development of numerous execution strategies.} | |
\resumeItem{Websockets api} | |
{Owned the design and implementation of a distributed web socket protocol enabling subscription to near real-time market trading data broadcast via PubSub messaging from several nodes, with load-balancing, request routing, rate-limits, authentication and se(de)serialisation driving api adoption and traffic.} | |
\resumeItem{GraphQL/REST api}{Maintenance and contribution to the development of several multi-node elixir/phoenix servers, http client integrations, SQL query optimisations over millions of rows, event logging, account statement emails, historical data exports, fulltext search, zero-downtime database migrations and a graphQL api permissions system.} | |
\resumeItem{Trading and Payment Systems} | |
{Development of a dynamic fee tier pricing structure, maintenance of deposit and withdrawal systems, development of balance tracking systems with cache eviction and invalidation on ledger entries.} | |
\resumeItem{Data-Ingestion Pipelines} | |
{Maintenance and contribution to the development of various stream and batch job processing systems with RabbitMQ, leveraging erlang/OTP patterns such as process isolation, supervision trees, error recovery and the phoenix pub/sub dispatcher over real-time data.} | |
\resumeItem{KYC/AML Monitoring System} | |
{Owned the development of kyc requirements(FINTRAC) integrated into several parts of the trading system including execution limits, associated logs, metrics collection and supporting systems to meet overall business regulatory compliance.} | |
\resumeItem{Code Review/Audits} | |
{Introduction of static security analyses tooling sobelow into the ci/cd pipeline, driving adoption of security best practices, vulnerability identification and submitting patches improving overall system integrity.} | |
\resumeItem{Admin/Internal tooling} | |
{Development and maintenance of several dashboards built with LiveView and other tools for support and operational teams enabling resolving of customer support tickets and providing basic analytics.} | |
\resumeItem{Technical Writing} | |
{Internal documentation of systems, practices and maintenance of external api documentation.} | |
\resumeItemListEnd | |
\resumeSubHeadingListEnd | |
\vspace{3pt} | |
\resumeSubHeadingListStart | |
\resumeSubheading{Juicyway.com (B2B Payments Provider)}{US, Texas(Remote)}{Backend Engineer}{Jan 2022 - Nov 2022} | |
\resumeItemListStart | |
\resumeItem{Payment Gateway} | |
{Development of features for a collection and disbursement payment gateway processing over a billion dollars in total payment volume, integration of payment methods and channels into the payment lifecycle system.} | |
\resumeItem{GraphQL/HTTP clients}{Development of idiomatic elixir rest and graphQL client SDKs for various financial platforms and systems integrated e.g FalconX, BinancePay, Binance Brokerage, Fireblocks, Stitch and Korapay.} | |
\resumeItem{KYC/AML monitoring system} | |
{Integration of a risk profiling api to analyse user behaviour and metrics collection.} | |
\resumeItem{Peer to Peer Escrow System}{Prototyping of a platform agnostic peer to peer payment system via escrow as a RESTful api in elixir/phoenix with AWS S3, postgres and LiveView and a client SDK in typescript.} | |
\resumeItem{Technical Writing}{Improved internal documentation of architecture and writing of engineering best practices such as collaborative feature specifications, incident postmortem of outages and public api maintenance(docs.spendjuice.org).} | |
\resumeItem{Technical Support}{Responding and implementing fixes to various technical support tickets} | |
\resumeItemListEnd | |
\vspace{3pt} | |
\resumeSubheading{Helicarrier.studio[YC '18] (Financial Exchange)}{Lagos, Nigeria(Remote)}{Backend Developer (Internship)}{Jan 2021 - May 2021} | |
\resumeItemListStart | |
\resumeItem{Financial Exchange} | |
{Development of ruby on rails graphQL server API features on pro.buycoins.africa} | |
\resumeItem{Cross-border transfers} | |
{Implemented server side features enabling international transfers and user SPA discount link interface using javascript(Vue.js) on sendcash.africa} | |
\resumeItem{Analytics}{Integration with an analytics api (getdrip.com)} | |
\resumeItem{Technical Writing} | |
{Technical writing of public apis documentation (docs.sendcash.africa \& developers.buycoins.africa)} | |
\resumeItemListEnd | |
\resumeSubHeadingListEnd | |
%-----------PROJECTS----------------- | |
\vspace{-5pt} | |
\section{Open source} | |
\resumeSubHeadingListStart | |
\resumeSubItem{thumbelina}{Native image processing of images using a C binary ABI for the BEAM virtual machine, using elixir and rust. source: https://github.com/hailelagi/thumbelina, docs: https://www.hexdocs.pm/thumbelina/0.0.2/api-reference.html} | |
\vspace{2pt} | |
\resumeSubHeadingListEnd | |
\vspace{-5pt} | |
\section{Writing} | |
\resumeSubHeadingListStart | |
\resumeSubItem{A Peek Into the Beam}{An introduction to erlang's virtual machine the BEAM (https://www.hailelagi.com/writing/a-peek-into-the-beam/)} | |
\vspace{2pt} | |
\resumeSubItem{It's legos all the way down}{A walkthrough of meta-programming and compilers by creating new syntax for a constructor to a dynamic array, extending elixir a functional language.). (https://www.hailelagi.com/writing/legos/)} | |
\vspace{2pt} | |
\resumeSubHeadingListEnd | |
\vspace{-5pt} | |
\section{Education} | |
\resumeSubHeadingListStart | |
\resumeSubheading | |
{Federal University of Technology}{Minna, Nigeria} | |
{Bachelor of Engineering - Chemical Engineering}{2015 - 2021} | |
{\scriptsize \textit{ \footnotesize{\newline{}\textbf{Courses:} Introduction to C, Differential Equations, Transport phenomena, Process Simulation and Optimisation }}} | |
\resumeSubHeadingListEnd | |
\end{document} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment