profile-pic
Vetted Talent

Ayush Goyal

Vetted Talent

As a seasoned software engineer proficient in full-stack technologies, I bring a wealth of experience and expertise to the table. With a strong foundation in Node.js, React, MongoDB, Elasticsearch, and Next.js, I thrive in architecting robust and scalable solutions that meet the dynamic demands of modern web development.


My journey as a software engineer has been characterised by a passion for crafting efficient and elegant code, coupled with a relentless drive for continuous learning and improvement. Leveraging my expertise in Node.js, I excel in building back-end systems that are both performant and resilient, ensuring seamless communication between server and client.


In essence, I am a software engineer dedicated to pushing the boundaries of innovation, delivering high-quality solutions, and driving impactful results in the ever-evolving landscape of full-stack development.

  • Role

    Software Engineer L2

  • Years of Experience

    4 years

Skillsets

  • TypeScript
  • Next.js
  • MongoDB
  • Node.js
  • React.js
  • Elasticsearch
  • JavaScript
  • Next.js
  • MongoDB
  • Node.js
  • React.js
  • Elasticsearch
  • JavaScript
  • ReactJs
  • JavaScript - 4.5 Years
  • Python
  • Nodejs
  • Nextjs
  • MongoDB
  • CSS3
  • AWS
  • Elasticsearch
  • JavaScript - 5.0 Years
  • Elasticsearch
  • JavaScript
  • HTML5 - 4.5 Years
  • Git - 5.0 Years

Vetted For

9Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Junior Fullstack Engineer (Remote)AI Screening
  • 57%
    icon-arrow-down
  • Skills assessed :Problem Solving Attitude, Type Script, API Design, Figma, JavaScript, React Js, UI/UX Design, HTML / CSS, Strong Attention to Detail
  • Score: 51/90

Professional Summary

4Years
  • Jun, 2024 - Present1 yr 3 months

    Developer/Technical Specialist

    Birlasoft
  • Nov, 2021 - Jun, 20242 yr 7 months

    Full Stack Developer L2

    RNF Technologies
  • Mar, 2021 - Nov, 2021 8 months

    Software Engineer

    Wipro Technologies
  • Jul, 2020 - Mar, 2021 8 months

    Software Development Intern

    Konfinity

Applications & Tools Known

  • icon-tool

    Jira

  • icon-tool

    Git

  • icon-tool

    Bitbucket

  • icon-tool

    ReactJS

  • icon-tool

    MongoDB

  • icon-tool

    Lambda

  • icon-tool

    SQS

  • icon-tool

    Selenium

  • icon-tool

    Next.js

  • icon-tool

    Node.js

  • icon-tool

    AWS (Amazon Web Services)

  • icon-tool

    Javascript

Work History

4Years

Developer/Technical Specialist

Birlasoft
Jun, 2024 - Present1 yr 3 months
    Developing a multi-tenant web application for leads generation and email marketing. Created and maintained Node.js microservices for authentication, notifications, and email scheduling, utilizing MongoDB, ElasticSearch, and AWS services (SQS, Lambda). Automated email scheduling and tracked email stats by integrating IMAP protocol and advanced email tracking techniques. Enhanced email delivery efficiency by 95% through system optimization and error reduction. Collaborated on scalable system architecture, ensuring seamless handling of high traffic and complex workflows.

Full Stack Developer L2

RNF Technologies
Nov, 2021 - Jun, 20242 yr 7 months
    Designed and implemented large-scale data processing systems in Node.js, ensuring real-time processing, scalability, and robust error handling. Developed dynamic REST APIs, enabling seamless integration with various applications and enhancing endpoint flexibility. Leveraged ReactJS to build modular, scalable features, improving team collaboration and system maintainability. Improved system performance by 80% through optimized query handling and efficient data processing.

Software Engineer

Wipro Technologies
Mar, 2021 - Nov, 2021 8 months
    Contributed to the development of scalable and responsive web applications using ReactJS, enabling efficient maintenance and reusable components. Created automation scripts for data monitoring using Python and Selenium, reducing manual effort by 75%. Enhanced team collaboration by utilizing shared codebases and delivering high-quality frontend solutions.

Software Development Intern

Konfinity
Jul, 2020 - Mar, 2021 8 months
    Built intuitive user interfaces using ReactJS and developed scalable server-side solutions with NodeJS. Collaborated with cross-functional teams to deliver end-to-end project solutions. Gained hands-on experience in MongoDB, HTML, CSS, and JavaScript, contributing to the development of responsive web applications.

Major Projects

3Projects

Leads and Marketing Application

Jan, 1970 - Jan, 1970
    Utilized technologies: ReactJS, NodeJS, MongoDB, ElasticSearch, AWS Lambda, SQS. Improved lead processing time and reduced email scheduling errors by 90%.

E-Commerce Website

Jan, 1970 - Jan, 1970
    Utilized technologies: NextJS, NodeJS, MongoDB. Increased user engagement by 60% through improved UI/UX design.

HP Fiji Application

Jan, 1970 - Jan, 1970
    Utilized technologies: ReactJS, NodeJS, Microsoft PowerApps. Optimized API response time by 80% and improved system scalability.

Education

  • Bachelor of Technology in Computer Science (Hons)

    Krishna Engineering College (2020)

AI-interview Questions & Answers

Could you help me understand more about your my name is mobile introduction? Yeah. Okay. Sure. So my name is Ayush Noel, and I have completed my engineering professional engineering college, Najibar in 2020. And after that, I joined a company called Aluqua Sports Technologies, uh, as I am associate software engineer, uh, in March 2020, and I worked there for around 1 year. And after that, I joined the road and I worked as a software engineer. Uh, there I worked for around 8 to 9 months, and I switched from there due to some relocation issues. And after that, I joined RNM Technology as a full stack developer. And the since in, uh, in November 2021 and since then, I'm working here as a full stack developer. And I'm working on technologies like React, Next, Node, uh, MongoDB, Elasticsearch, and all those things.

When would you use a fragment in media? What problem is this? Okay. So React fragment, uh, is nothing but an empty, uh, empty fragment, uh, that we can use when we don't want to create an additional HTML element in the norm. So what React component does is it always return a single element. So if we return to Dave inside single component, we can wrap those 2 into a single react fragment that will be a sim empty fragment. Uh, empty tag. You can say an empty estimate tag that can be that can wrap those 2 div to make it a single, uh, element.

How do you approach error handling in asynchronous JavaScript code? Okay. So if we have any, uh, code running in our, uh, in our application, for example, we have a function, and we are making an API call which is asynchronous in nature. So what we will do is write, uh, wrap that into a try catch flow. Uh, and in try, we will make that API call and do whatever is in operation we are doing. Uh, API call or API catching. So if there is any exception or if there is any error that came, uh, to or came in that case, then we will catch that in the error block. And we also have a block finally. Try catching finally block there, uh, or we can use that block if we want to run some permissions irrespective of whether we caught the error or, uh, there was no error. Finally block will always.

How do flexbox and grid differ in c s and when it is appropriate to use one over another? Okay. So both Flexbox and Grid have, uh, are used in the CSS. And, uh, so if we, uh, in in my experience, uh, I try to use flex mostly, uh, over the grid. Uh, but, generally, I use grid also when I want to create some fixed portion of, uh, I should the separation of, uh, particular screen. For example, if I want to separate a screen into 4 part, then I'll use grid and display grid and then grid template columns to 4 actions. 1 f r, 1 f r, 1 f r, and 1 f r. And as compared to if I want to, um, if I have 2 dev blocks and I want to, uh, as they are their display is in blocks form. And if I want them to come to in a single line, then maybe I'll use display flex and align them center. So they'll come into a similar line. So they both have their significance, and they both can achieve the, say, UI, uh, whatever you want to achieve. We can achieve a same thing using Flex, and it's it depends on the developer what he what he is using and why.

Discround. How you would create a real time collaborative feature in an application using the 10 WebSocket. Okay. So in, uh, in React, we can use WebSockets. So what what WebSockets does, uh, it, uh, is is that it creates a a two way communication. So mostly in the in best device, uh, there is a client or 2 server connection open where we say that we want some data to client. Client said that we want some data to server server. That's the data to the client and connection is good. But in that, so if it happens, if that connection stays open and both the list and the front end can send the data back end all the times, and back end can send the data to front end all the times. Okay. So in React, what we can do is create the events, uh, and reset to those events. We can create the event using Emmet, and we can add on those events using Emmet, and we can listen to those events. We can come on. But if there is any event happens there, then you can use that. So using these events, uh, event creation and event, uh, you can use that for the React or component React application, which is real time in nature.

So in TypeScript, uh, we can define the type of a particular minor type except for this certain fixed states. Obviously, we can always define the type by using colon and the type that we can go and define. Type you can define. Like, for example, we are saying bar. Tempo variable equals to not equals to colon, test type. Either is a string or number. You can use that.

Given the typescript snippet below, which part of solid principle does it potentially violate? Okay. So glass rectangle with height constructor. We have width c number, height and number. That's the height line. Then after that, we have class square. Click calculate area. Now we are creating a new square, and we are calculating the table. So it is following the single entity principle of solid as in single responsibility principle. So that is fine. I think the code I think the code looks good. I don't see any problem.

In this JavaScript code, why am I the usage of double equals to be problematic? What would you use instead of making more robust? Okay. So if, uh, double equal to does not do type checking. So if user input types 42 in number, if user input values 42 in number, then also it will be, uh, accepted. And if it is in string, that is also it will be accepted. So if we write triple equals to instead of double equals to, then it will also check its type. So if, uh, it is triple equals to and the user input value is 42 instinct, then only it will say it is it comes along the correct answer. I'll say it will screw in. Try again. Else block and print try again.

What are the potential pitfalls when migrating a large Javascript codebase to TypeScript and how would you mitigate them? Okay so if we have a large data codebase written in Javascript and if we want to convert them into TypeScript So the very first difference in the type checking, it does not happen in Javascript but it will happen in TypeScript So it depends, in also TypeScript it depends what level of type checking you want to achieve So you can achieve that from Javascript to TypeScript easily by declaring all the variables type to any So all the variable types will be any and that way you can convert the code from Javascript to TypeScript easily But that is not how you should do it because that is not the main purpose of TypeScript The main purpose is to properly define its types and defining the type of each particular variable will depend on what type of variables you have used in Javascript whether you have done type conversion, type propagation in Javascript then it will take a lot of time to properly identify the code, read the code, understand the code and see if you have declared a variable which is a is equal to 10 and then you are changing its type into making it a boolean or a string or whatever you want to do which should not happen in TypeScript so that all those things need to be in the mind then we can mitigate the code from Javascript to TypeScript

How you doing a performance issue in React application? Obviously, performance issue, uh, in React application can occur due to rerendering. And, uh, we can, uh, we can, uh, resolve that by using react but memo memoize the component or lazy import the components if it is because of rerendering. It. And if they are not happening in read any, then I'll try to debug it using the developer tool. I'll check whether I am making infinite API calls in that or time. If that is happening, that will also, uh, that can also have my, uh, main UI and cause a lot of performance issues. And, uh, there are, uh, if there is any, uh, condition that is running in a for loop, that can also impact the, uh, paid performance because it, uh, blocks the main thread. So that will slow slow down our, uh, paid application. Maybe hang it as well. So all these things, and we can you see and debug the code to see why the our page is not performing as it is expected.

How do you ensure accessibility is part of your UX design? Okay. So while developing the proper UI, uh, I like to consider 2 things, uh, in mind. 1st is the UI is, uh, properly responsive in, uh, most of the screens, like a laptop and web laptop and mobiles. Because now most of the most of the peoples now, you know, why to do to scroll all their websites. And second thing, I try to check all the events, uh, all the e because, uh, in events mostly, in today's object in the events, so mostly, the JavaScript will be ready. And that is the main reason why our page can hang. If you have used any, uh, event that is causing the the the calling or something like that, then that only the page can hang. So that is the main issue. Then that I will keep in mind that our, uh, events are properly aligned. Uh, we have properly included events. And if I have added any event listener, and I'll properly remove that in a PMF function as well.