profile-pic
Vetted Talent

Zulfikar Ali

Vetted Talent

Strategic Blockchain Innovator and Web3 Technologist seeking to leverage deep industry experience and cutting-edge technical skills to architect and lead transformational blockchain projects for global clients. Dedicated to mentoring aspiring developers.

  • Role

    Sr. Blockchain & Solidity Developer

  • Years of Experience

    24 years

Skillsets

  • Defi - 6 Years
  • Type Script - 2 Years
  • JavaScript - 6 Years
  • Node Js - 6 Years
  • LMS - 14 Years
  • HRIS - 14 Years
  • Smart Contracts - 6 Years
  • react - 6 Years
  • Chart analysis - 6 Years
  • Forex Trading - 6 Years
  • smart contract development - 6 Years
  • SDLC documentation - 20 Years
  • Project Management - 15 Years
  • Metaverse - 2 Years
  • Ethereum - 6 Years
  • REST - 6 Years
  • MERN Stack - 6 Years
  • web3 - 6 Years
  • Solidity - 6 Years
  • Blockchain - 6 Years
  • Go Lang - 2 Years
  • API development - 6 Years
  • Python - 4 Years
  • Data Analysis - 24 Years

Vetted For

15Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Senior Blockchain-Smart Contract EngineerAI Screening
  • 61%
    icon-arrow-down
  • Skills assessed :binance smart chain, Defi, Go, Hyperledger, Polkadot, Rust, Blockchain, react, Smart Contracts, trading bot, web3.js, AWS, Azure, Python, Solidity
  • Score: 55/90

Professional Summary

24Years
  • Sep, 2023 - Present2 yr 9 months

    Sr. Solutions Architect | Developer | Trainer | Content Creator/Writer

    ZulfiVerse Solutions

Applications & Tools Known

  • icon-tool

    TypeScript

  • icon-tool

    Node.js

  • icon-tool

    Express.js

  • icon-tool

    React.js

  • icon-tool

    HTML

  • icon-tool

    CSS

  • icon-tool

    Bootstrap

  • icon-tool

    Jest

  • icon-tool

    Solidity

  • icon-tool

    Golang

  • icon-tool

    Python

  • icon-tool

    Remix

  • icon-tool

    Truffle

  • icon-tool

    Oracle PL/SQL

  • icon-tool

    MS SQL Server

  • icon-tool

    MongoDB

  • icon-tool

    Microsoft Office

  • icon-tool

    GitHub

  • icon-tool

    Heroku

  • icon-tool

    Azure

  • icon-tool

    Postman

  • icon-tool

    Fiddler

  • icon-tool

    Splunk

  • icon-tool

    Docker

  • icon-tool

    GitLab

Work History

24Years

Sr. Solutions Architect | Developer | Trainer | Content Creator/Writer

ZulfiVerse Solutions
Sep, 2023 - Present2 yr 9 months
    Spearhead the business development and operation initiatives, focusing on creating content for projects, LMS, webinars, and coaching, including marketing and sales webinars.

Achievements

  • Successfully implemented a DApp supporting cryptocurrency exchange on the Ethereum platform
  • Devised a public Blockchain which supports mining, block rewards, cryptocurrency, and crypto wallets
  • Designed and developed a Dapp for managing health record systems on Ethereum public blockchain
  • Designed and developed a Dapp for supporting peer to peer lending business on Ethereum public blockchain
  • Constructed an E-Commerce App with PayPal and Credit Card Payment along with Admin Dashboard
  • Implemented a task manager REST API complete with user accounts and authentication

Major Projects

6Projects

Decentralized Exchange for ERC20 Tokens

Oct, 2019 - Oct, 20201 yr
    Implement a decentralized exchange to buy and sell cryptocurrencies on the Ethereum platform, supporting Decentralized Finance (DeFi).

Build a Blockchain & Cryptocurrency system

Oct, 2019 - Oct, 20201 yr
    Architect a Blockchain implementing Ethereum protocols like mining, cryptography, cryptocurrency wallet, etc.

Blockchain Electronic Health Record (EHR) System

Oct, 2019 - Oct, 20201 yr
    Create a blockchain solution for managing health record system on public blockchain like Ethereum.

Blockchain Peer to Peer Lending System

Oct, 2019 - Oct, 20201 yr
    Create a blockchain solution for supporting peer to peer lending business on public blockchain like Ethereum.

An E-Commerce online store

Oct, 2019 - Oct, 20201 yr
    Implement an E-Commerce application providing complete online store functionalities.

A Task Manager application

Oct, 2019 - Oct, 20201 yr
    Implement a task manager back-end.

Education

  • PGD in Blockchain Technology & Management

    Amity University & eCornell University (2020)
  • Master of Management Sciences (MMS) in IT

    Devi Ahilya Vishwavidyalaya University (2001)
  • B. Sc. (Computer Science)

    Mohan Lal Sukhadiya University (1998)

Certifications

  • Pte academic

  • Pmp

  • Jlpt level 3

Interests

  • Travelling
  • Cricket
  • Watching Movies
  • Cooking
  • Badminton
  • AI-interview Questions & Answers

    My name is Vulfikarelli, and I'm a senior blockchain developer. Currently, I'm working for Zulfur Solutions. The main business of the company is educating people on blockchain and web 3 related careers. My role is as a Solidarity smart contract developer trainer. So, this is a bit about myself. Additionally, I have a total of 24 years of IT experience, and out of that, my blockchain experience is more than 6 years. My tech stack includes public blockchain Ethereum, Solidity, JavaScript, TypeScript, and Web 3.js. I also have experience in DeFi, and I have knowledge of Go language, which I studied in my college or postgraduate diploma time. I'm well-versed in Python coding. This is a bit about me. Also, I'd like to add that regarding the job requirement, it was mentioned that the person or income bank should have crypto trading bot knowledge. So, I'd like to add that on this front: I do have experience in forex trading. I'm a certified forex trader, and that helps me understand how crypto trading works. I've also done coding for MQL and MQL 5 for 4x, and I have some knowledge about how crypto trading bots work, which is similar to our MQL 4 and MQL 5 coding. So, that's a bit about me regarding this current question.

    When selecting a consensus mechanism for a private blockchain network, I would consider the type of private blockchain being implemented, such as Fabric or Hyperledger. Additionally, I would consider the type of network being created, such as a network involving Apple and DeSou. In this case, I would prioritize the security aspect, as well as the speed of the network. I would also consider the block height or number of blocks required before a transaction is considered final or confirmed.

    Okay, this question asks about designing a liquidity pool smart contract and associated calculations for implementing an automated market maker algorithm. Alright. So when we talk about automated market makers, this is kind of an algorithm which creates its own market based on the liquidity pool. So, for example, Uniswap. In the case of Uniswap, the logic is such that you can go and configure your own native cryptocurrency token and make a pair with Ethereum or USDT or some other parameter. You can create your own cryptocurrency token and deploy it on Uniswap.

    Here is how can you optimize guess uses in Solidity functions that handle array manipulation. So, first of all, when dealing with arrays, we have to be mindful of the fact that in the case of arrays, we should avoid infinite loops while counting the array. Our logic should not be set up to create an infinite loop. Otherwise, all our gas will be consumed, and it will not be returned back. And also, we should avoid using dynamic arrays because they require more gas. I think the answer to the question is that we should avoid using dynamic arrays and use fixed arrays instead. Second, we need to avoid infinite looping. It should not clear infinite loop otherwise it will consume all the gas.

    This question reads can you discuss a method to automate withdrawal of funds from a smart contract to multiple beneficiaries and associated challenges. Okay, suppose we are creating a web 3 application and there we have written a logic that whenever one person is withdrawing funds using that application and at the back end side, it is interacting with the smart contract. So from the front end side, the person will be authorizing the withdrawal transaction using his private key and then the smart contract is responsible for making sure that the multiple addresses or accounts or wallets, which should receive the funds, are correctly identified. This is one of the things we need to be mindful of. The smart contract is currently transferring the funds to the correct addresses. And also, I believe the smart contract should have reentrancy protection programming done. So, there is no reentrancy attack in the case of withdrawal. Otherwise, the hackers can write a smart contract that can exploit all liabilities if the reentrancy protection is not there or the main contract is not updating its state before transferring the funds. I believe reentrancy attack is one of the challenges.

    Which web 3.js method would you prioritize for efficiently listening to smart contracts event and why? Oh, I think I just forgot that method name. It was web3.eth.event. or listen event. So I cannot recall it. I have used it to interact, with a smart contract on ether Ethereum blockchain. But at the moment I cannot recall it.

    The event has been correctly called with the 2 parameters message to sender and message to value. I think it has been correctly defined and emitted. Because I can see address indexed sender. It has been indexed as well. So indexing is also necessary. However, I do notice a small issue in the explanation. The correct sentence structure would be: "Because I can see that address 'sender' has been indexed as well."

    The next question says given the solidity function below, explain what the modifier only owner is likely doing before the function execution and identify any potential risk or issues with the implementation assuming owner is a mutable state variable. So the modify the modifier function only owner it makes sure that sender is the owner. Okay. If it is not the owner then it will it will not go through the required error handler will throw the error and what next only is likely doing before okay I already explained what is likely doing before so it makes sure that the function is called only by the owner And any potential Okay. Potential, risk is that suppose if you don't use this modifier, which is sure that the sender is the owner, then what will happen? The withdraw function. Any hacker will just call this public function because the public function. If you don't don't put this condition, then any hacker can call this function and withdraw all the fund because we are using message to sender or transfer and balance. So it means all the balance will go. All the balance, of the smart contract will be transferred to the hacker if you don't put this, if you don't use this modifier. So I hope I have answered this question.

    So I think this is my answer. Okay, this is very hard. Design a protocol for a cryptographically secure decentralized porting system using smart contracts that minimizes the risk of voter fraud and manipulation. So, basically we are going to write a smart contract in Solidity and in order to minimize the risk of voter fraud. So what should happen is that in this smart contract, let's say, we are going to create a voting system for selecting proposals. Let's say there are multiple proposals configured in the smart contract and then there will be a number of voters who should be made eligible by the owner or the admin. So when we are configuring the smart contract in the constructor, we should make sure who is going to be the owner. Whether the person who is deploying the smart contract is going to be the owner or there is another way to identify the owner. So, one way the person who is deploying the smart contract can be the owner, or in the constructor, you can mention different addresses or one address who can be the owner. And from there, once the contract has been deployed, then the designated owner in the system, either one owner or multiple owners, should have the right to create voters. So, there will be a list of voters. So we can write a function where they can create voters, and in a sense, there will be a function which will take the address of different voters and put them in an array or a mapping. You can use a mapping also. So it will make sure that a particular address is eligible to vote. And then, another thing we can use is a delegate function. We can create a delegate function. So, there, the voter, if he doesn't want to vote, he can interact with the smart contract, and there should be a function like delegate voting rights, something. So, he should be able to delegate his right to someone else. So, in this fashion, you know, we can minimize the risk of fraud that someone else cannot work without the permission of the original voter, or someone else cannot work on behalf of that particular voter until unless the original voter has authorized someone else, or delegated someone else to work on his behalf. So, I believe if these mechanisms are in place, we can create a cryptographically secure decentralized voting system.

    I would recommend DevOps practices for continuous integration and deployment of blockchain applications. So continuous DevOps, I would say that nowadays we are using GitHub. So the moment we upload any updated smart contract, automatically the programs are there and it is tested on the GitHub itself. So there is one thing I would recommend that not only you do local testing, you know, locally also before we upload any smart contract to the blockchain, we do some kind of testing either in Truffle, Hardhat, Brownie, or Foundry. We use these testing mechanisms, but also there is an extra layer on GitHub which tests the smart contract. So automated local testing and CICD testing on GitHub are the mechanisms. So that your blockchain is continuously integrated with the main application.

    So I do have experience of working in Dapp development projects, and we used to have a fruitful discussion with the UI/UX designer. It's also true that, being a web 3 application, it's not that straightforward. In web 2 applications, once you initially enter your data, like your name, email ID, password, and some information, your user ID is created. But since it's Dapp and we might be using some kind of web three authentication system, it works a bit differently. It creates a unique key once you enter the data, and then based on the unique key, it creates a wallet for you on the blockchain. What happens is, when you see on the mobile in the UI/UX, there's a first lag immediately when you enter your data, you create a profile. Immediately, your wallet may not be ready. So first of all, that lag will be there, and you also need to display to the user that his wallet has been created and the user will be eager to access his wallet. The user might be having some confusion about how to access his wallet. Suppose you have attached your web 2 application to a text, it might not be that quick, and maybe the user would like to ask for the wallet address and his private key. And if your application logic doesn't allow the user to access his private key, then there may be some doubt on the user's mind that why they're not being given their private key. We need to make a balance here. When initially the onboarding is happening, the user should be a satisfied user at the end of onboarding. At the end of onboarding, the user should not be confused about what has happened to his profile, why they're not able to immediately do transactions, or why they're not able to see their balance. Sometimes, you wouldn't like to populate his wallet immediately. Suppose he has deposited some funds, and you as a platform creator or owner, you would like to stop or wait for some time before you populate his actual wallet in the blockchain. The user may be anxious that they had deposited $100 but they cannot see the token right now because you're sending transactions in batches. So sometimes, it may take some time. Maybe you send your badge after 30 minutes, every 30 minutes, or every 60 minutes. The user may not be happy with this delay, then you need to educate your user and take them into confidence that it will be available or visible after 30 minutes or 60 minutes, so and so. I believe that will be my answer.