Skip to content
View itsabgr's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report itsabgr

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
itsabgr/readme.md

ENG. A. BAGHERI

πŸ“§ [email protected]

πŸ”— Github/itsabgr

πŸ’¬ Telegram/itsabgr

I started programming at 16 by learning Lua in a self-study manner. I am known as an eager researcher and enjoy studying, designing, and building systems, especially network-based ones. I have knowledge of low-level network programming on Linux, and for this, Ubuntu is my OS. I built 15 projects, some within a team but mostly on my own as a software engineer and a backend developer.

NOTABLE PROJECTS

Decentralized Bandwidth Sharing Network

Developed a truly decentralized and permissionless bandwidth-sharing network. This innovative solution leverages the power of Go, C, and a custom HTTP/2-based protocol for efficient data transfer and a Decentralized App (DApp) for a trustless and secure network.

Cryptocurrency Payment Gateway

Designed and developed a modular and efficient Crypto Payment Gateway (CPG) that supports a wide range of cryptocurrencies. The CPG utilizes a Go-based Oracle for robust functionality and performance. Supports major cryptocurrencies like Bitcoin (BTC) and Ethereum (ETH). Extensible to integrate with Ethereum-compatible coins and ERC20 tokens. Modular design for scalability and maintainability.

Ethereum-compatible blockchain

A sequential PoS Ethereum-compatible chain on top of the Tendermint / Cosmos SDK with some optimizations. I understood how Ethereum and EVM work in depth to make it Ethereum-compatible and expose the same API as Ethereum. To improve the throughput, I added some optimizations in the processing and consensus parts. I also used a method to solve the blockchain big data size problem.

Watch-to-Earn system

This system incentivizes users to watch videos on a VOD platform by rewarding them with tokens while they engage with content using Solidity and Go. The dapp side was an ERC20 to store balances and mint tokens, and the backend side (Oracle) was responsible for watch time verification and distribution.

Decentralized Messenger

A federated and decentralized end-to-end encrypted messenger by Go in a very simple but fast and secure architecture inspired by email was developed. A DHT was developed for its peer discovery to store users' information in it, like what IPNS does, and also a special blockchain was made in order to register and assign unique names to users. Moreover, a DNS proxy and resolver were crafted to integrate into current networks. Finally, a cross-platform client library was made in Dart.

Live Streaming

A scalable live-streaming service in Go with CDN capabilities was developed for an online classroom system.

Course Management System

An educational course management system for a university was developed using NodeJS. MongoDB was used for the main database, and the challenge was that some complicated time overlaps and conflicts had to be managed.

Asset Management App

An asset management system was made using NodeJS for a province that needed to manage and record the repair history of its pylons and wires between them. There were a lot of 4K images that were stored in GridFS, and due to complex relationships and queries, MySQL was used as the main Database.

Ride-sharing App

An online-taxi project was done using NodeJS TypeScript. MongoDB was the main database mainly because of its geo-special and schema-less capabilities and GridFS. I also used MySQL for financial transactions. There was no use of WebSockets for notifications; instead, I used a queue and HTTP polling method for those cases. Its architecture was also used for a massage reservation app and e-commerce, but GRPC was replaced by REST.

SKILLS

  • DevOps and Server Administration (Debian, Ubuntu)
  • Containerization (Docker, Snap) and Orchestration (Swarm)
  • C, Go, NodeJS TypeScript, and Solidity
  • Microservices architecture
  • Parallel and concurrent processing
  • TCP/IP networks
  • Blockchain L1 and L2
  • Load balancers and Proxies (Nginx)
  • RDBMSs and SQL
  • NoSQL (MongoDB, Redis)
  • P2P, Decentralized, and Distributed systems
  • CI/CD
  • Git and Github flow
  • Smart Contract and Oracle development

LANGUAGES

  • Farsi/Persian
  • English

Pinned Loading

  1. fastintmap fastintmap Public

    Forked from cornelk/hashmap

    A Golang lock-free thread-safe HashMap optimized for fastest read access.

    Go 1

  2. progressive progressive Public

    Go