Work Experience
Gestion RR
2023
Software Engineer
Unit Journey: A Full Stack Web Application for Real Estate Management
TS
JS
Rust
Node.js
Next.js
React.js
PWA
MongoDB
PostgreSQL
Engineered and Developed a Full-Stack Web Application for Real Estate Management. The application is built using React.js and Next.js for the frontend and Node.js and Rust for the backend. The application is also built using Typescript and uses MongoDB and PostgreSQL as the database.
Workflow Automation Full Stack Web Application for Accounts Payable Management
TS
JS
Node.js
Next.js
React.js
Electron.js
Excel.js
Engineered and Developed a Full-Stack Web Application for Accounts Payable Management, including expense approvals, invoice approvals, invoice payments and tracking.
Custom Monthly Report Generator Desktop Application
TS
JS
Node.js
Next.js
React.js
Electron.js
Excel.js
Custom Internal Tools and Applications for Workflow Automation
TS
JS
Node.js
Next.js
React.js
Excel.js
Technologies Used:
- Next.js
- React.js
- MongoDB
- Mantine UI
- Node.js
- Electron.js
- Progressive Web App
- PostgreSQL
Languages Used:
- TypeScript
- JavaScript
- Rust
- Python
2022-2023
Software Engineer (Contract)
Custom Discord Command RPC Bot Server
Rust
TS
JS
Node.js
GRPC
discord.js
Tokio
websockets
Designed and Developed a custom Discord bot for the purpose of sending Remote Procedure Calls (RPC) to a custom server. This project is composed of 2 parts, a Node.js "frontend" using Discord.js that handles user command events and a Rust "backend" which has a stable First In First Out Queue which can be multi-threaded. The two parts communicate using GRPC protocol buffers. The server then has to executes the command and sends the result back to the bot, which then sends the result to the user. Entirely custom designed and built from scratch and the servers needed to be asynchronus to handle multiple requests at once, optimized and robust so not never fail while the entire codebase had to be clean, readable and maintainable long term.
Custom Discord Invoke AI Stable Diffusion Bot
TS
JS
Python
Node.js
discord.js
Invoke-AI
Refactored and cleaned up outdated JS codebase for Discord bot for an Invoke AI Stable Diffusion server. The codebase was using outdated packages and had a lot of commands and functionalities but everything was contained in a single JS file with messy code and global variables for which things like the queue system was handled with. The codebase was refactored to use modern TS with static type checking, using a modular design pattern with each command in its own file and using a command handler to handle all commands. The codebase was also refactored to use modern Discord.js v13 and the bot was also updated to use the latest version of Node.js.
Technologies Used:
- Node.js
- GRPC
- Discord.js
- Tokio
- Invoke-AI
Languages Used:
- Rust
- TypeScript
- JavaScript
- Python
2021-2023
Software Engineer
Custom Art Generator
Typescript
Node.js
Sharp.js
Image Manipulation
Design and development of an entire custom art generator along with a suite of command line tools from scratch using Typescript and Sharp.js (blazingly fast image manipulation library). With over 1000 assets, hundreds of of logical rules, and a over 10 000 quality pieces to generate out of unimaginably large number of possibilities, I had to design a system that would be able to handle all of the numerous different requirements and edge cases as well as optimize it to compute as fast as possible and uses true randomness. Requirements were also constantly changing with new ones added often. The result is a blazingly fast and optimized (the bottleneck was the image manipulation library) and flexible system that was able to handle the load.
Smart Contract Engineering
Solidity
Foundry
Hardhat
Typescript
Smart Contracts
Design and development of the original smart contract library that would be used for the KPR project. The library passed an audit by a third party and was used as a base for the entire project. The library was also optimized to be as gas efficient as possible and to be able to handle all of the different use cases that were required and was also extensively tested with unit tests and integration tests.
Infrastructure, Deployment, and DevOps
Next.js
React.js
Typescript
Devops and infrastructure work for the original web application, smart contracts and command line tools.
Technologies Used:
- Node.js
- Sharp.js
- Jimp.js
- Foundry
Languages Used:
- Solidity
- Typescript
- Javascript
Freelance
2020-2023
Freelance Software Engineer
Freelance Projects
TS
JS
Rust
Solidity
Python
Node.js
React.js
Next.js
Sharp.js
Jimp.js
Chakra UI
Mantine UI
Actix Web
fastify.js
Sharp.js
Jimp.js
ethers.js
hardhat
foundry
MongoDB
REST API
websockets
GraphQL
Software Engineering work and consulting for various private projects as a freelancer using a wide range of technologies and languages, including Full Stack Web Development, command line utilities and tools, Smart Contracts engineering, and some GUI applications using Electron.js
Technologies Used:
- Node.js
- Next.js
- React.js
- Sharp.js
- Jimp.js
- Foundry
- Ethers.js
- Hardhat
- MongoDB
- GraphQL
- Chakra UI
- Mantine UI
- Material UI
- Actix Web
- Fastify
- Websockets
- REST API
Languages Used:
- Solidity
- TypeScript
- Rust
- Python
- JavaScript
2021-2022
Founder and Lead Software Engineer
Shift Web Backend Application
Rust
TS
Node.js
JS
MongoDB
Mongoose.js
Actix-Web
React.js
Next.js
Fastify.js
REST API
GraphQL
Tokio
Websockets
LRU-cache
Engineered and developed a Web Backend Server to aggregate data from multiple sources and provide a single API for the frontend application. The server is built using Rust and Actix-Web and uses MongoDB as the database. The server is also built using a modular design pattern with each component in its own file and using a component handler to handle all components. The codebase is also fully typed and uses static type checking and uses a custom Fixed Point Number type. The server is also built to be as fast as possible and uses a LRU-cache to cache data and uses websockets to push data to the frontend application.
Shift Smart Contracts
Solidity
Typescript
Foundry
hardhat
Smart Contracts
Designed and developed smart contracts for Smolsweep which allows users to buy NFTs and items from multiple marketplaces in bulk. The smart contracts are built using Solidity and are built using the Foundry framework and were tested with unit tests. The smart contracts are designed using a modular and composable design pattern with the ERC-2535 Diamond Pattern with each facet and component of the contract in its own file and using a proxy contract to delegate calls to other contracts from.
Shift Web Frontend Application
React.js
Next.js
Typescript
Node.js
ethers.js
Tailwind CSS
Designed and developed the Shift Web Frontend application. The application is built using React.js and Next.js and uses Tailwind CSS for the UI components. The application is also built using Typescript and uses ethers.js to interact with the smart contracts. The application is also built using a modular design pattern with each component in its own file and using a component handler to handle all components. The codebase is also fully typed and uses static type checking.
Smolsweep Web Frontend Application
React.js
Next.js
Typescript
Javascript
Node.js
ethers.js
Chakra UI
Material UI
Designed and developed the Smolsweep web application which is a frontend application that allows users to interact with the Smolsweep smart contracts and buy items from Treasure Marketplace in bulk. The application is built using React.js and Next.js and uses Chakra UI and Material UI for the UI components. The application is also built using Typescript and uses ethers.js to interact with the smart contracts. The application is also built using a modular design pattern with each component in its own file and using a component handler to handle all components. The codebase is also fully typed and uses static type checking.
Smolsweep Smart Contracts
Solidity
Typescript
Foundry
hardhat
Smart Contracts
Designed and developed smart contracts for Smolsweep which allows users to buy NFTs and items from Treasure Marketplace in bulk. The smart contracts are built using Solidity and are built using the Foundry framework and were tested with unit tests.
Technologies Used:
- React.js
- Next.js
- Node.js
- MongoDB
- Chakra UI
- Material UI
- Foundry
- Hardhat
- Ethers.js
Languages Used:
- Rust
- TypeScript
- JavaScript
- Solidity
Mentor, Lecuturer and Workshop Host
Mentorship
TS
JS
React
Next.js
Node.js
Mentored 2 groups of 4 students in the Industry Mentorship Program. Helped students with their projects and provided guidance on how to approach problems. Had regular meetings with students to check up on their progress and provide feedback.
Lectures and Workshops
TS
JS
React
Next.js
Node.js
Blockchain
Smart Contracts
Solidity
Ethers.js
Organized and hosted 2 lectures on the following topics: Javascript, Typescript, React, Next.js, Node.js. Organized and hosted a workshop on the following topics: Blockchain Technologies, Smart Contracts, Solidity and Ethers.js.
Technologies Used:
- React.js
- Next.js
- Node.js
- Blockchain
- Solidity
- Ethers.js
Languages Used:
- TypeScript
- JavaScript
- Solidity
2020
Data Science and Software Engineer Intern
Development and Global Deployment of a Data Management GUI Application at Novartis
Typescript
Javascript
Python
Node.js
Electron.js
Pandas
Numpy
Plotly
At Novartis, I engineered a GUI application using Electron.js, TypeScript, and Node.js, designed to streamline the company's sales data handling process. The application interfaced with a Python backend, leveraging powerful data manipulation libraries like Pandas and Numpy to compile, clean, analyze, and export data from various sources. The design of the GUI application was created with the company's brand aesthetic in mind, ensuring a seamless experience for users.
To maximize the utility of the application, I integrated Plotly.js for data visualization, enabling users to gain insights at a glance directly within the GUI. The application was globally deployed across Novartis, significantly enhancing productivity and efficiency in the company's data management processes. This project showcases my ability to develop high-impact software solutions that not only meet client needs but also contribute to operational efficiency on a global scale.
Technologies Used:
- Node.js
- Electron.js
- Pandas
- Plotly
Languages Used:
- Typescript
- Javascript
- Python
- CSS