About Me
I'm a software engineer with a knack for tackling complex problems and a passion for finance, web3 and blockchain. With over 6 years of hands-on experience, I've had the privilege of wearing diverse hats ranging from frontend and backend developer, to mentor, architect, and team lead.
My journey began when I started programming at a young age and it has since flourished into both my hobby and my profession. I take pride in constantly stepping out of my comfort zone and embracing new challenges. I firmly believe that success is a collective effort. Driven by an insatiable curiosity, I'm always eager to learn, adapt, and stay on top of the latest developments in tech and finance.
When I'm not at the computer, you'll probably find me exploring new places and seeking out adventures.
Experience
- 2021 - 2023
I've worked on different projects over time, DeFi crypto options exchange, DeFi option-based yield generation app, ERC 4337 based DeFi price prediction app using spreads and digital options. Key Responsibilities: - lead frontend developer - worked on diverse roles, frontend, backend, and mobile - developed custom packages to share functionality across apps and platforms, such as state-management, authentication, smart contract interactions and more - developed custom backend core packages to abstract and reuse functionality across services - integrated different authentication methods, injected wallet, Walletconnect V2, private key, for both web and mobile platforms - implemented an option-based RFQ system to connect different entities with our product, achieved performant quoting via Redis, Kafka, and Websockets - integrated bridge aggregators to be able to bridge assets to our chain - developed custom charting solutions to display complex data such as option payouts and users trades - conducted code reviews to ensure high code quality - worked closely with the CEO to prioritize features and improvements - conducted interviews for new candidates - provided mentorship and guidance to developers
- React
- Typescript
- NextJS
- NodeJS
- NestJS
- React Native
- Redis
- Kafka
- PostgreSQL
- Ethers
- 2020 - 2021
Senior Full-Stack Developer - Instantoption
I've worked on a decentralized binary options protocol. Key Responsibilities: - led the frontend and backend development - integrated the frontend with on-chain smart contracts - developed custom charting solutions for displaying user trades - implemented different authentication methods, both injected wallet and social login - setup the infrastructure and CI/CD pipelines - conducted code reviews to ensure high code standards
- React
- Typescript
- Redux
- NextJS
- NodeJS
- Apollo
- GraphQL
- MongoDB
- Web3js
- MagicLink
- 2019 - 2020
I've worked on a cryptocurrency-based gaming platform. Key Responsibilities: - led the development of the project - responsible for front-end and back-end web development - conducted code reviews for team members to ensure high code quality - setup the infrastructure and ci/cd pipelines for the app - implemented Bitcoin and Ethereum deposit/withdrawal/wallet systems for users and administrators by setting up BCoin nodes (https://bcoin.io/) and Geth nodes (https://geth.ethereum.org/) - implemented a provably fair random generation system (https://medium.com/@alexcambose/provably-fair-system-in-javascript-6457e028d2aa) - implemented real-time websocket-based communication for different parts of the app
- React
- Typescript
- Nodejs
- Express
- NextJS
- GraphQL
- WebSockets
- MongoDB
- Web3js
- Geth
- Bcoin
- Ngnix
- 2018 - 2019
I've worked on different outsourcing projects and companies, including a US startup. - responsible for front-end and back-end web development - closely worked with clients in an agile environment to establish objectives and deliver incremental software updates - collaborate with the rest of the engineering team to design and launch new features - setup and manage development and production servers to ensure a good workflow and stability
- React
- SCSS
- NodeJs
- Typescript
- Meteor
- GraphQL
- AWS
Projects
Proofchain
Proofchain leverages blockchain technology to facilitate efficient communication and data exchange between global supply chains, providing customers with proof of product provenance and ownership. It also provides blockchain tools for customers/suppliers to integrate into their current systems.
- React
- Redux
- NextJS
- Web3.js
- Solidity
- Truffle
- Jest
MixDice
A cryptocurrency-based gaming platform. It allows users to deposit crypto and use the funds inside the app. It uses a provably fair algorithm to for generating random numbers.
- React
- Typescript
- Express
- NextJS
- GraphQL
- WebSockets
- MongoDB
- Web3js
- Geth
- Bcoin
webcam-base64-streaming
Webcam live streaming with WebSockets and Base64 encoded data.
Javascript · Websockets · NodeJSx-frame-options
A service that let's you bypass th x-frame-options header to embed content.
NodeJS · Expressprovably-fair-example
Provably fair implementation done in javascript.
Javascript · NodeJS40-lines-of-sass
Full featured flexbox grid in 40 lines of Sass.
SASStime-tracker
A VSCode extension to track working time.
Typescriptvirtual-dom
A Virtual DOM algorithm implementation that improves front end performance by updating only changed nodes in the DOM.
Javascriptsentry-traced
A package that provides a decorator to annotate class methods with Sentry tracing information.
Typescript · Sentryethereum-clone
A basic implementation of Ethereum and EVM. It implements a blockchain, EOA, and interpreter with a few opcodes like PUSH, STORE, LOAD, JUMP, and more.
JavascriptWritings
Why are junior developers essential in a team?
Published on Jun 08 2023Unlocking the reasons behind choosing a mixed Seniority Team: Benefits for Your Project and Aspiring Juniors
Recruiting · Developer · Junior · Engineering · HiringSentry tracing decorator in Typescript
Published on May 30 2023Enhancing Debugging and Error Tracking with the Power of a Sentry Tracing Decorator in Typescript.
Sentry · Debugging · Performance · Programming · NodejsHow to Escape the Try-Catch Hell
Published on Jul 28 2021Promises fix the callback hell, async/await fixes the Promise hell, but there’s one more thing…
Javascript · Computer-science · Programming · Coding · Software-developmentBenchmark Javascript easily
Published on Jun 08 2020How to use vanilla js to benchmark heavy computations
Javascript · Computing · Nodejs · Programming · BenchmarkHow JWT works? The implementation
Published on Jun 04 2020Understanding and building a simple JWT library from scratch.
Programming · Javascript · Authentication · Json-web-token · Nodejs