profile-pic
Vetted Talent

Farid Shaikh

Vetted Talent

Dedicated and results-driven Senior Full Stack Developer with 9 years of extensive experience in creating dynamic and responsive web applications. Proficient in a wide range of technologies, including WordPress, Shopify, Magento, and various frontend and backend frameworks. Skilled in UI/UX design, API development, and database management. Adept at collaborating with cross-functional teams, meeting tight deadlines, and ensuring client satisfaction. Demonstrated expertise in problem-solving through competitive programming challenges. Proven track record of successful project delivery, including notable contributions to E-Learning systems, social media influencer platforms, and customized Shopify stores. Committed to staying abreast of emerging technologies for continual professional growth.

  • Role

    Senior Fullstack Developer

  • Years of Experience

    9 years

Skillsets

  • Git - 3 Years
  • Tailwind
  • Express Js - 4 Years
  • APIS - 5 Years
  • React Js
  • Amazon Web Services
  • Cross platform compatibility
  • Github / lab
  • Ecommerce - 8 Years
  • Express - 4 Years
  • react - 4 Years
  • Bootstrap
  • React Js - 4 Years
  • SQL - 8 Years
  • jQuery
  • Amazon Web Services
  • Cross platform compatibility
  • CSS
  • HTML
  • NO SQL
  • problem identification
  • Solution finding
  • Rest APIs - 4 Years
  • FullStack - 3 Years
  • PHP - 4 Years
  • Express Js - 4 Years
  • REST API - 4 Years
  • Wordpress - 8 Years
  • Github - 3 Years
  • JavaScript - 8 Years
  • MySQL - 8 Years
  • Node Js - 4 Years
  • Node Js - 4 Years
  • Backend - 4 Years
  • Google Cloud Platform - 1 Years
  • HTML - 9 Years
  • Mongo DB - 4 Years
  • CSS - 8 Years
  • UI/UX Design - 8 Years
  • Redux - 3 Years
  • Shopify - 6 Years
  • NO SQL - 4 Years
  • Mongo DB - 4 Years
  • React Js - 4.5 Years

Vetted For

7Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    React JS Developer (Remote)AI Screening
  • 71%
    icon-arrow-down
  • Skills assessed :Communication Skills, Teamwork, Api integration, React Js, UI/UX Design, Django, JavaScript
  • Score: 64/90

Professional Summary

9Years
  • Aug, 2021 - Present4 yr 9 months

    Sr. Full Stack Developer

    Freelancer
  • Mar, 2015 - Aug, 20216 yr 5 months

    Sr. Full Stack Developer

    Infinity Genesis Techso Pvt. Ltd.

Applications & Tools Known

  • icon-tool

    WordPress

  • icon-tool

    Opencart

  • icon-tool

    PHP

  • icon-tool

    Magento

  • icon-tool

    XAMPP

  • icon-tool

    cPanel

  • icon-tool

    MySQL

  • icon-tool

    FTP server

  • icon-tool

    jQuery

  • icon-tool

    Git

  • icon-tool

    CSS3 & CSS5

  • icon-tool

    HTML5

  • icon-tool

    Javascript

  • icon-tool

    Ajax

  • icon-tool

    React

  • icon-tool

    Vue.js

  • icon-tool

    REST API

  • icon-tool

    Node.js

  • icon-tool

    Python

  • icon-tool

    MongoDB

  • icon-tool

    Apache

  • icon-tool

    PostgreSQL

  • icon-tool

    WampServer

  • icon-tool

    Slack

  • icon-tool

    Jira

  • icon-tool

    Skype

  • icon-tool

    Figma

  • icon-tool

    Visual Studio Code

  • icon-tool

    SaaS

  • icon-tool

    MobaXtream

  • icon-tool

    NPM

  • icon-tool

    Postman

  • icon-tool

    tailwind css

  • icon-tool

    FileZilla

  • icon-tool

    AWS (Amazon Web Services)

  • icon-tool

    ReactJS

  • icon-tool

    React Native

  • icon-tool

    Shopify Plus

  • icon-tool

    SEO

  • icon-tool

    Shopify

  • icon-tool

    Joomla

  • icon-tool

    Wix

  • icon-tool

    Drupal

  • icon-tool

    Stripe

  • icon-tool

    GitHub

  • icon-tool

    Bitbucket

  • icon-tool

    GitLab

  • icon-tool

    AWS

  • icon-tool

    Azure

  • icon-tool

    GCP

  • icon-tool

    Heroku

  • icon-tool

    Microsoft Azure

Work History

9Years

Sr. Full Stack Developer

Freelancer
Aug, 2021 - Present4 yr 9 months
    As a Freelancer

Sr. Full Stack Developer

Infinity Genesis Techso Pvt. Ltd.
Mar, 2015 - Aug, 20216 yr 5 months
    at Infinity Genesis Techso Pvt. Ltd., Indore

Achievements

  • Solved 850+ Problems in LeetCode, GFG, Codechef. 3.5 Stars in Data Structures and Algorithms on LeetCode.

Major Projects

18Projects

Calltek

    Developed FE design and component-based back office admin dashboard using Vue.js.

Expressedinprints - Custom T-shirt Print & imprint App

    It is an ecommerce website where customer can customise the t-shirt and can purchase it Made changes in design. Customise theme. Make code better. Created a custom plugin

icosiest

    A shopify website where customers can purchase indoor funiture Customised the store theme. Create custom sections for the product page. Create custom sections for the collection page. Create custom javascript to create some new features which was not in the theme.

Online interview platform

    An online interview platform where developer can register and give interview Created new pages, Add a component to record the interview. Used muse api to upload video.

Lony Application

    It is a HR management software build to handle all the hr related work From figma provided by the client created a fully responsive web application. Added a component for user profile to upload photo from camera. Used custom css written by myself Used Material UI to use pre made UI component Used redux to handle state globally. Created api using Expressjs. Created microservices Make connection of all microservices

Wreckonnect

    It is a saas based application, this application handle the stock of vehicle parts allow user to connect with supplier and get a quote of the vehicle parts and can make a purchase from the application Created new components. Used material ui library to make design responsive . Used redux to handle state globally. Created api using Expressjs. Created endpoints to handle payment . Created a webhook endpoint to handle payment status Integrate Stripe Payment gateway

Rocketads

    It is a saas application build to manage ads from different platform like meta, tiktok and help user to activate or deactivate ads and manage ads spend From figma provided by the client created a fully responsive web application. Made it compatible with different browsers. Used Tailwind library to make design responsive . Used redux to handle state globally. Created api using Expressjs. Created several endpoints to handle data. Integrate with third-party api to grab the data. Make cron jobs to run api automatically. Integrate Stripe Payment gateway.

Chat Application

    Developed a real-time web-based chat application to connect multiple users using Websockets for a real-time environment.

Contact Manager App

    Developed a backend application using Node.js, Express.js, and MongoDB to store user information and perform various operations such as authentication and CRUD APIs.

Reachplus

Freelancer
    Reachplus is a social media influencer management and hiring platform for campaigns. MERN stack work on it with FE integration with APIs already provided. From figma provided by the client created a fully responsive web application. Fix a lot of bugs that the client provided. Created new pages as per requirement. Used redux to handle state globally. Implement a new booking component. Integrate frontend with the backend api Rest API PostgreSQL GraphQL WebSockets Sequelize Bootstrap Tailwind Strapi

XpressGoods online Shop

    Created a complete collection of APIs for eCommerce to meet customer needs and enhance user experience with minimal latency.

Expressedinprints

    Developed a custom t-shirt print & imprint app with complicated online ordering for printing and embroidery, including data management and price customization for various arts.

Metaverse Plot Map

    Developed a dynamic virtual map for a plot allotment system in a VR metaverse for PowerJoker using Mapbox.

Rai Vitamins - Personalised Vitamin Customisation

    Created a multi-level personalised vitamin suggestion API and front end for a website to simplify vitamin selection based on user symptoms.

OpenSea API selling Platforms

    It is like Rapid APIs with End Points Testing and Crypto payment option Created endpoints to handle login registration.. Created endpoints to handle payments. Add crypto payment options.

E-Learning system

Freelancer
    Created using MERN Stack with User Role as well as video course management. Created the whole project from starting to end Created frontend using my self imagination Implement redux Used UI framework Created apis using ExpressJs Handled role management properly Handle access to dashboard area properly for student and teacher

Rai Vitamins

Infinity Genesis Techso Pvt. Ltd
Feb, 2021 - Mar, 2021 1 month

    It was a shopify store, i setup the store and made changes in store as per the requirement

    Created new Section and for those section created design with custom css.

    Wrote liquid code for creating dynamic section, where admin can fill up the details and can add new section on page

    Connect with a multi-level personalized vitamin suggestion API and on the basis of api response written custom javascript code to send product to cart for the user.

    Created metafield and show those metafield on products

Expressed in prints

Infinity Genesis Techso Pvt. Ltd
May, 2020 - Jul, 2020 2 months

    It was build on wordpress CMS and it was an ecommerce website.

    Woocommerce was used in this website for making it ecommerce.

    Created  a custom plugin to add custom pricing based on the option choose from a third party plugin.

    In that plugin created custom function and attached those functions with hooks to call them on some events.

    Applied AJAX to manipulate the pricing, wrote CSS for fixing some design issue, applied some jquery

    Deployed it on a cpanel hosting.

    Install SSL on it.

Education

  • EDUCATION B.E. -

    RGPV (2014)
  • Bachelor of Engineering in Computer Science

    Rajiv Gandhi Proudyogiki Vishwavidyalaya, Synergy Institute of Technology Dewas
  • B.E. - Computer Science

    Rajiv Gandhi Proudyogiki Vishwavidyalaya
  • B.E.

    Rajiv Gandhi Proudyogiki Vishwavidyalaya (2014)

AI-interview Questions & Answers

Could you help me understand more about your background and by doing a deep introduction of yourself? So, myself, Eric Shek. I'm a project developer. I have 9 years of experience, and I have worked on various technologies like HTML, CSS, JavaScript, WordPress, PHP, and Shopify. Now, for the last 5 years, I have been working on JavaScript libraries and frameworks like React JS and Node JS. And most of my recent projects have been working as a front-end developer on Vue Js, and I'm good at both front-end and back-end. In front-end, I can make designs responsive using any tool like Bootstrap, or UI tools like Material UI and Tailwind UI, and I can write custom CSS if needed. I can also make designs from any tools like Sketch, Photoshop, and I can create full responsive designs from Figma, and it will be exactly like Figma is provided. So, I'm very good at front-end, and I have knowledge of back-end too. I have worked on Node JS, Express JS. I have created several APIs using Node JS, also, and I have knowledge of hosting too. I have one deployment on AWS. In AWS, I have deployed several JavaScript applications, Node JS applications, and I have also created CICD pipelines through GitHub to AWS. So, whenever we push any code in the main branch, it will be directly uploaded to the server and visible to the global. And I have worked on Google Cloud Platform also. I have knowledge of Firebase too. In Firebase, I have worked on Firestore authentication and extensions and functions. And I have knowledge of version control systems like GitHub and GitLab. So, overall, I'm a full-stack developer with great experience in front-end technology. Because from the beginning of my career till now, I have been continuously working on front-end and creating designs from Figma.

How do you handle errors when multiple API calls fail in a React component? So if we're calling multiple APIs in a single component, then there should be a sequence of API calls. Like, we can't simultaneously hit multiple APIs at a time. So we should first use state and set initial values, something like 0 or false, then initially hit an API which should initially be hit and we need the data initially for that. So if the API gets some error and the API call gets failed, we can use a state variable to identify the API is failed. We can use try catch. And in try catch, we can call the API. So if the API call fails, we'll keep it false. We do not change the variable value. If the API call gets successfully called, we'll make it true or one. So we'll get to know that the API call is failed or not. So if it's failed, we should not call the next API. And if we need to call the next API, it is required to call them together. So similarly, we can use try catch for each API, we can use separate state variables for each API call and we can identify that the API call is failed or not. So by using state variables, useEffect, and try catch, we can easily handle errors if an API may get failed.

Describe your approach to implement draggable and only sizable table column in a React application. So if there is a need to implement a draggable and resizable table column in that application. So first of all, I will look for the library or packages that are available. And before that, if we are using any UI component library in our React application, then I will look into the library to see if the column resizable and draggable feature is available. If it is available, I will directly go for the available option in our installed library. If it is not available, then I will go for another package, such as the package which we can use in our React application, and if I find that package, then I will use it in the application. Alternatively, we can create a custom table and apply some JavaScript to make it reliable and disable. This is the approach we can follow initially. Then later on, we can identify what we can do to make it responsive on all screen sizes. If the resizable column in the table looks bad, we should use a fixed amount of width for the table and apply a scroller. If we want to resize it to any width, it will be in a fixed screen and there will be a scroller which we can scroll and see all the columns. If the column size gets increased a little more, it will be out of the screen. To avoid this issue, we can use overflow auto and it will be adjustable automatically inside the screen.

So, if you want to asynchronously debug the asynchronous API calls in React, you would initially check the starting point of the API that needs to be debugged. For example, there is an API that is initially being called. First, you will go to that API and start debugging. To start debugging, you will apply try-catch blocks. This will really help identify the error if there is an error coming from the API or if it's an error from your side. You can use Sentry initially. And then, if the API is being created, you will use the exosphere if you're creating an API. Then, you will go to the try block and see the API call is being made. Inside the try block, you will find the API call. If you are calling the API using the fetch function, you will also see the error in the catch block. You will get to know that the call is being made properly or whatever it is going through the error block. If it is going to error, you will first console the response if the API is getting failed. So, you will console the error variable and you will get to know what exactly the data is coming. And if it is not going to error, the API is being called properly. So, you will go to the fetch function and you will console the response variable. And you will debug the whole response variable values. You will use console.log so that you can see the whole values there. And later on, what you want to find, you can find using console.log and see all the values that are coming.

When developing a UI using React, I ensure component reusability and composability by creating separate components for each UI element. I check the entire UI to identify components that can be reused in multiple places. For example, if there's a block that calls an API and shows data in a card format, I identify it as a component that can be reused. I create a separate file and component for it, and use props to receive data from other components. If needed, I use user state and relevant hooks inside the reusable component. I design the entire component within this file, including HTML, CSS, and any necessary logic. If the component needs to render data from an API, I use the map function to display the data. I pass the state variable containing the API data to the reusable component, which can then be called anywhere to show the data in the desired format. This approach allows me to create reusable components that can be easily composed and reused throughout the UI, reducing code duplication and improving maintainability.

To prevent memory leak in a React application with complex state management, we should avoid using any unnecessary variables. If there are several variables, we should avoid using both variables in the same scope. And if there are any variables which are declared but not used, we should remove those variables and make sure that the variable we are using is initialized properly and used throughout its lifecycle. And if we are using a React application and we need to handle complex state, then we should consider using a state management library like Redux. Redux is a great tool for handling state globally and can be used to manage state very efficiently, which can help to avoid memory leaks.

Given this API integration function, identify any major concern with regard to API error handling and explain what will be done to improve it. So anything major concern in any major Okay. So you have, defined a function, get integrated data. You have all the, URL parameter inside it. You have used the fetch method. You are calling API. You have used then function, and in the response, you have just got the response for JSON function then you have again use then function inside this. You have used database variable inside data. You all just do console dot log, and inside the console log you are showing the data. And inside catch you are just printing error using error variable. So using fetch, first solution I will do is we can use Exeos and provide a great options to make API cons. Then we have calling we are calling, then function. Okay. And, we can also use try catch here if we are calling an API. We can make a try catch block also. That's another solution. And, for if you are talking about error handling, then we gonna need some, we are gonna need, the state variables. So error handling is error handling is being done here, but we are not using any state variable to get to know to the UI that error is being, properly handled or not because if we are going to catch block then we need to find out a way to identify that we have got to the catch block and we need to show it on the UI too. So we should use any, state variable which will we can use it, to false. Each and each should be give it to false. If we go to the then function, we do we should make it to true. Otherwise, it will be false. So we will get to know that API is being called properly or not. So we can just conditionally show in our UI that API is called or not and we can show error message or error component.

Looking at this code snippet, can you explain what might be the issue why the component is not re-rendering as expected with the state changes? So, initially, you have defined useState and a setData function, and there is a blank object there. Inside the useEffect, you have called the fetchData function, and then, you are setting, setData function is called with 1 data. Okay. Notice the empty dependency. So, it will only be called once. The useEffect will only be called once because there is an empty array dependency. And inside the get, fetch data function, the API takes 2 seconds. So, looking at this code snippet, can you explain what might be the issue? The re-rendering will only be called when the useState variable is getting changed. So, in the below example, you have useEffect, and this useEffect has no dependency, so it will only be called once. It will not be called again and again. So, if you want to re-render it, you need to pass some dependency based on the requirement so that it will change only render the UI. So, because of the empty dependency, the useState will be called only once, and it will only set the data inside the data variable only once. So, there will be no re-rendering after the page is loaded, and you have not handled the error here. So, if any error is going to come here, it will not re-render because you cannot use the state in a useEffect hook here. You need to use a try-catch block here, and if you are using a try-catch block, then you can get to know that an error is coming, and you can handle it properly, and you can set the data as error data in your data variable state variables. So, yeah, this is the only thing I can tell you about this. First, you need to use a dependency, and then you also need to use a try-catch block, and then error handling.

I'll separate the components based on the requirement. I'll divide the components that each component needs to be rendered and based on the conditions that components need after specific things are loaded. So I'll use some useEffect hooks and I'll use useEffect. I can use useEffect also. So why using useState and useEffect, we can identify that something has happened. And now we need to call another component. So on the basis of condition, we can then call the next component. So, initially, our application will be loaded fast. Then after conditions, we can call the next component which we are going to need. So after that component, we can also apply another condition. After that, this component will be called. And while before calling this, we can use a loading component also which will just show the loading text or just a progress bar of the loading. Then this component will come after specific things happen or a specific component gets loaded. So while using useEffect and useState, we can conditionally render the next component, and it will help us dynamically load it down and optimize the performance.

What strategies would you use to efficiently serialize and deserialize data for real estate management? Let me check. So I have knowledge of class framework of Python but I have very limited knowledge in the Django so I cannot answer this question very efficiently before I do not have very good knowledge in the Django so as I'm going for the front end development So it will be handled, by the beginning developer. I have knowledge in Node. Js, but Django, which is something I have not really good knowledge in it. So

Discuss the techniques for deploying React DG mobile application which means secure communication between client and server. Okay. So, if we talk about re-extending Jango, as I said, I have no good knowledge in the area. So I can give you an answer on the basis of React and Node because I have developed the application in React and Node and deployed these applications also in AWS. So first of all, if we are going to deploy it, there are several options we can follow. If I talk about mobile deploying, so first, I will go to the AWS and I will create an EC2 instance to install there. I will create some inbound and outbound options there, then I will install Node.js and then I will initially need a user service, either NGINX or we can use Apache also. If you go to the NGINX, we can set up the NGINX server there for our application. We can point our domain to the IP. We need our elastic IP also. Then we can manually create a key for our EC2 instance. So it's kept either through our FileZilla or we can use it directly using Forti. Then after logging through FileZilla, we can upload a file of the JS in our instance and it will be accessible. So this is the part on the front end. If we talk about Node data, then we want to also make sure that communication gets properly handled. So, like, for the same EC2 instance, I will install the Express.js service. I will upload all the Node.js code in a folder. Then I will go to the NGINX. I will create a separate server where I will set up proxies where my application will be started and run. And in this, it will be Express.js service. I will start my Node.js application, you know, by typing npm start and my application file, like, f.js or whatever the name is. Then my application will be started, then I have set the proxy in NGINX also. So it will be ready on the domain. Like, for example, I have set the server slash API. So whatever the domain is, yeah, I will use API. And my Node.js application will be there. So, I will use the ENV variable also to import the front-end and back-end. So I will set the ENV variable, like, domain, whatever the domain is, abcv.com/api. So all the application calls will take the ENV variable path, like, API path, and it will be called in all of the API calls. There will be no need to re-change in all the API URLs. It will take the ENV variable, and it will be called easily efficiently. So communication for both the loops, front-end to back-end, will be efficiently handled, you know, if you use ENV variables. So I have deployed, and I have deployed the mechanism.