profile-pic
Vetted Talent

Akhil Thapa

Vetted Talent

To leverage expertise in Front-end technologies for crafting intuitive user interfaces, and to apply Back-end knowledge in dynamic project environments. 4+ years of total industry experience, specialize in leveraging Front-end technologies to craft intuitive user interfaces and 6 months of experience with Back-end technologies as delineated in the skills section, have garnered exposure to SQL as well as NOSQL databases. Well-equipped for dynamic project environments. Team player with an unwaveringly proactive attitude, excellent communication, and software design skills with a strong user focus.

  • Role

    Laravel Frontend Developer

  • Years of Experience

    4.33 years

Skillsets

  • CSS
  • TypeScript
  • Software Design
  • Rest APIs
  • React.js
  • Node.js
  • Next.js
  • MongoDB
  • Jira
  • Jest
  • Docker
  • Data Structure
  • Bootstrap
  • Communication Skills
  • AWS
  • Git - 2 Years
  • Chart.js
  • D3.js
  • Tailwind
  • SQL
  • Redux - 2 Years
  • HTML
  • Angular
  • JavaScript - 3 Years

Vetted For

9Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Front End Developer (Remote)AI Screening
  • 72%
    icon-arrow-down
  • Skills assessed :Bootstrap/Tailwind CSS, Browser Page Rendering, CSS, Event Loop, React Js, Vue JS, HTML, JavaScript, Python
  • Score: 65/90

Professional Summary

4.33Years
  • Apr, 2021 - Present4 yr 5 months

    Frontend Developer

    TATA CONSULTANCY SERVICES
  • Jul, 2020 - Jan, 2021 6 months

    Full Stack Developer Intern

    AEOLOGIC TECHNOLOGIES

Applications & Tools Known

  • icon-tool

    Rest APIs

  • icon-tool

    AWS

  • icon-tool

    Git

  • icon-tool

    Docker

  • icon-tool

    Jira

  • icon-tool

    Jest

Work History

4.33Years

Frontend Developer

TATA CONSULTANCY SERVICES
Apr, 2021 - Present4 yr 5 months
    Successfully enhanced UI by developing 25 digital-level screens for various banking models. Employed Chart.js and D3.js to visualize graphs, and presented banking data in React.js via Rest APIs with axios. Developed screens served as the sole source presented to the clients, boosted interaction by 1.4 times. Contributed to my second React project, Developed 7 screens, resolved 71 major bugs, and utilized Rest APIs for data representation, integrated multiple themes to enhance website viewing, crucial for reconciliation. Conducted code reviews and utilized SonarQube to validate violations. Resolved 22 and 2290 fortify and sonar issues respectively. Additionally, performed unit testing with Jest.

Full Stack Developer Intern

AEOLOGIC TECHNOLOGIES
Jul, 2020 - Jan, 2021 6 months
    Worked on a live project, launched by the Delhi government and received an appreciation email and reward for handling the frontend. Led a team of four in frontend development, utilizing React for UI, Redux for state management, and Bootstrap/Tailwind for responsive designs. Also managed validations and implemented functionality in Spring Boot. Addressed over 190 bugs, showcasing my in-demand frontend skills. I was specifically sought after and successfully completed the remaining frontend development in the project, utilizing Angular, Postgres, and MySql.

Achievements

  • Successfully cleared TCS Digital in first attempt
  • Shortlisted for coding competition hackathon
  • Employee Of The Month for August and December 2023 in TCS
  • Client appreciation for UI design presentations

Major Projects

3Projects

PROMPTOPIA

Dec, 2023 - Jan, 2024 1 month
    Developed an interactive interface that enables users to share their thoughts or prompts and manage them from their profile page. Web application project utilizing Next.js for seamless UI rendering, MongoDB for a robust database, and implemented next-auth and GoogleProvider for secure authentication. Employed Tailwind for meticulous CSS styling. The successful deployment of the Promptopia project on Vercel underscores commitment to delivering professional, high-quality solutions.

E-TAILING APPLICATION

Jan, 2021 - Mar, 2021 2 months
    Web application project utilizing the React.js, Spring Boot, and MySQL tech stack. The main objective is to streamline the consumer's product purchase experience from the e-store, incorporating major functionalities such as React Auth Kit for authentication and a payment gateway. Utilized React.js components to create wishlist, search, pagination, and cart options. SASS was employed for an interactive and professionally designed user interface.

ENTRYWAY APPARATUS

Jan, 2020 - Feb, 2020 1 month
    Developed an interface enabling users to seamlessly add, update, create, and delete visitor data. Vital step in digitizing information storage. Leveraging Angular with a MySQL database and incorporating Bootstrap, elevated the project's design using Material UI.

Education

  • BTech in Computer Science

    PUNJABI UNIVERSITY (2020)
  • 12th Class

    KENDRIYA VIDYALAYA NANGAL BHUR (2016)

Interests

  • Singing
  • Badminton
  • Trekking
  • Internet Surfing
  • Help NGOs
  • AI-interview Questions & Answers

    Could you help me understand more about the. Okay. Uh, Yeah. So, basically, uh, my name is Akhil, and I am from, uh, And I have been, uh, like, uh, working with TCS for the last 3 years, and I'm working in a, uh, banking project over there. And, uh, it's basically we are building our own product and it's a server client model. So, uh, so, basically, data science team is there who is handling all the data models and all. It comes to me. Now I am the one who is handling, uh, who is handling, uh, the front end rest APIs, integrating APIs, developing new screens in React JS mainly, and, uh, like, fixing the bugs on the basis of client's requirement, whatever the client suggests. We have like, I connect with client on the, like, weekly basis or daily whenever we need it. So these are my goals and responsibility over there, like, to fix the bugs and daily basis, uh, like, to design, to develop new screens. I have developed over, uh, 28 screens from the last for the last, uh, few months, like 8 or 9 months. And, uh, also, I'm, uh, also, uh, checking the code quality with the help of Sonar and Fortify scans. These all also handled by me and optimization also, whatever the code. Because 2 juniors are working under me, so I'm, uh, working with them. And, yeah, that's it. Thank you.

    Can you can you differentiate state and. Yes. So, basically, uh, state, uh, state is, uh, we can say that states are mutable and props are immutable. States are basically defined to, uh, defined to have some, like, in our in our application, uh, we have, uh, like, uh, that is not coming in my mind. Uh, we have components, right, over there, and, uh, it's it's basically for, uh, internal data storage. So, like, uh, like, what are the current conditions or state of a company that defines the state? So states are, as I mentioned, like, uh, state is basically, uh, to managing the beautiful data. And the probes are probes are basically, uh, external input pass to the component that used for, uh, configuring and, uh, we can say customizing their behavior, whatever behavior we want. And we can pass the probes as much props we want. So those are immutable. So that's it.

    Explain the use of higher order components and product and provide an acceptable use case. So first of all, if I talk about, uh, like, this one, like, explain the use of higher order components and provide the example use case. So, like, high order component in, uh, React, basically, like, uh, the component which which basically, uh, it's a pattern in React JS used to, like, enhance or modify the behavior of existing component. So, basically, they are functions that that take a component as input and return new enhanced component with additional, uh, functionalities or whatever the whatever functionality we want to do. So HOCs, uh, HOCs enable, like, uh, code reusability, and we can say that, uh, by which we can create our own logic over there by having some, uh, uh, existing logic. So some use case, if I say suppose we have, uh, we have multiple components in our application So that require, uh, authentication, uh, before rendering their content. So, like, instead of authentication logic, like duplicate duplicating authentication logic in each component, so you can create, like, high loader component. So that handles the, uh, authentication process. And, uh, this basically this will check this high order component will check the user is authenticated or not, and then after that, it redirects to the home page. So this is the use case. We don't need to do it in every time. So that's the use case of hybrid company. Uh, that's it.

    Straight how you would structure a reusable component library in React. How would you structure user? Illustrate, how would you structure a reuse in the component like the in the VM project? Oh, structure. So, uh, I hope I'm, uh, I read this question correctly. So what I understood from this, uh, is like, uh, like creating a reusable component library, uh, like, involves, like, organizing, uh, organizing Visualforce components. So, like, uh, and, uh, basically, like, let us we have a project over there. So so how can we do that? Like so we need to follow, uh, components directory. So first of all yeah. Reusable components mean, like, component directory, we have to follow, like, to store all the reusable, uh, components, uh, that basically takes the individual component files, uh, and and also create a directory to store shared resource such as CSS files, JavaScript file images, and all the static resources. That's it. And what else need to be followed that structure also? Like, also, we need to, uh, to avoid conflict with the existing component or future edition, uh, consider prefix your, uh, component with name with a unique namespace, something unique. That also needs to be followed. And, uh, we can also like, in this part, I'm, uh, we can also create a document on this one to explain the properties and uses, uh, uh, to for the, uh, like, any relevant information. Uh, like, this can be in the form of component with the component file or separate documentation file. That's it, I guess.

    Could you demonstrate a method for unit testing, stateful components? So, uh, like like, it involves like, if I if if you, uh, if if I understood, right, it it involves their behavior and interaction in isolation from the rest of the application. So we can use we can we can use, like, Jest and React on, uh, in bits like React testing library, uh, to achieve this. Basically, like, uh, let's say we have a we have a simple counter component. Okay. Counter dot JS, and that implements account button in click. Now now, basically, uh, now if if if I see now let's write unit test for each, uh, for each, uh, for for this component, uh, using chest or whatever it is. So we need to create a file, first of all. Okay. Uh, something whatever the component name, dot test dot jest. And in this test, we we render the counter component and then, uh, for, uh, and then use, uh, if if you say then you'll we have a method called file event dot click. Okay. So this basically this, uh, is basically to stimulate a click on the increment button. After that, we we assert that the count has, uh, the count, uh, has been updated to 1. To run the test, execute NPM test or, uh, yeah, NPM test or YARN test. So, uh, because I prefer YARN test in my application. So in this project directory, so Jest will find and execute, uh, any files, uh, with the with, uh, dot test dot JS or dot Spectre JS. So, uh, this test demonstrate how to unit test a stateful component by, uh, stimulating, uh, user interactions, uh, by stimulating user interactions and asserting the expected behavior. So we can also write additional tests to cover other scenarios such as decrementing and account and everything. So this is the main thing.

    Detail a strategy for lazy loading component in a single page application. So first of all, lazy loading is a technique which we use to improve the performance of web application by by only loading by only loading, uh, components when they are needed rather than loading all the components upfront. So this is, uh, useful in integration, and this is the, uh, one of the one of the major advantage of using React. And, basically, if I see, like, a detailed strategy for lazy loading component, So we can do with the help of, like, identifying the components. Like, uh, we can identify, uh, the components which are known essential for initial load, and that can be, uh, loaded lazily. Okay. So these are typically components that are not visible or required immediately when the page loads. Okay. And we need to follow like, we have to split our application into smaller chunks using the port splitting technique. This involve breaking down your application into separate, uh, bundles based on different routes, uh, features, uh, or yeah. That's it. So and, uh, also, like, we can use the dynamic import. Yes. One of the major thing. Uh, and, uh, like, dynamic import means, like, uh, utilize the dynamic import statement that introduces in ES 6. Yes, ES 6 back end, uh, to use, like, Webex import function to load the component asynchronously when they are needed. This is the one point. And lazy loading also, like, uh, we can provide also one thing for the component or, uh, we can say loading indicator to display while the lazy loaded component is being fetched. So, basically, this is this is for enhances the user experience by indicating that the component is loading. And, uh, we can implement, uh, the error handling gracefully. Like, uh, that is that can be done with the help of like, it can include displaying an error message or retrying the, uh, loading process. So this is the one thing. And and the last thing is obviously testing. Like, we can test the lazy loading component throughout to ensure that, uh, they behave as expected as integrated seamlessly, uh, with the rest of the application. Uh, Yeah. As we mentioned, like, this include testing functionality, performance, and compatibility across different environment. So, yeah, by following, uh, uh, this strategy, uh, we can efficiently, like, implement lazy loading for components.

    An API call is weird in this React component state snippet, but there's a common best practice that's not being followed. Can you identify it and suggest how to improve it? K. K. So we are basically fetching here, the steady statement. Sorry. No. It's not state. Confirm out, we are fetching. The data response is coming and response with these 2 results. Right. No. I don't have to configure it. Best practice that response. Actually, to be honest, like, uh, like, I'm trying to figure it out, but, uh, like, I I work don't, uh, like, I work class component, but it's it's my during my internship period. So that's why I'm not much aware about class components here, but I know this one. I'm not able to understand. It's not coming in my head right now. I mostly work on functional components, but let me go through it again because I have worked on this. There might be the that like, what I understood, like, I have 12 second. What I understood here is, like, loading through that is the incorrect placement here outside of the state of the within the constructor.

    Uh, looking at this view to JS code snippet, there's a small mistake that could cause a problem. Please identify the mistake and explain how it might affect the app's behavior. So what I can see here, like, there is only one issue with this that affects the behavior of, uh, app is because, like, uh, after dot 10, the placement of dot catch block, uh, it should be placed, like, after the 10 block. So, uh, like, so, like, uh, like, any error occurs during the processing of the response data. So that is the issue. So, like, the corrected response should be, like, dot then dot. Then after that, the dot catch should be there that I'm gonna understood. And of and also, like, here, if I see yes. That's the only issue. Because the that if if we place it here, then, uh, then the errors that occur during the fetch request or the processing of response data, that will be called, uh, uh, the dot catch block if if we place it outside. Here, it won't be. Like, the placement is correct incorrect, please. That's it.

    Explain a strategy for migrating a large project from CSS to Tailwind CSS with minimum disruptions to the production environment. Let's explain the strategy for migrating a large project from CSS to Tailwind CSS with minimal disruptions to the production environment. So here, what we can follow is, like first of all, obviously, we need to, uh, like like, migrating large project from CSS to Tailwind CSS. So it's very, like, it's very careful planning. We need to carefully do it. Uh, like, uh, like, uh, we need to we need to follow strategy for, like, fulfill this migration that needs, uh, like, rather than, uh, attempting to migrate the entire project at once, like, we we need to adopt, like, Tailwind CSS, uh, uh, gradually. So we we what we can do is if I, uh, if I will be at this position, so, uh, what I can do is I start, uh, by integrating Tailwind CSS into new components or sections, uh, of our project while, uh, while, uh, existing CSS, uh, untouched. So this approach allow us to, uh, become familiar with Tailwind CSS and its capability without a VR without disruption of the existing functionality. So we need also, like, what we can do is after that, uh, like, uh, we can break down our project into smaller chunks that, uh, that, uh, so that it can be manageable and begin by migrating individual component or sections to Tailwind CSS 1 at a time. Okay. So, also, this thing and, also, like, we can also considering we can consider the, uh, like, uh, we can follow the parallel, uh, development approach, uh, where we can maintain a separate branches for migrating to Tailwind CSS while continuing to develop new feature or new folks that that that, uh, in in the main branch. So, like, this approach allow us to work on the migration without affecting the main production environment. That also, the one thing. And what we can what else we can do is, like of in the in the tailwind, uh, there is one thing. Like, uh, we we need we we can follow, like, tailwind CSS utility first approach to rapidly style our component without writing custom CSS. This approach eliminates the need to write, uh, and maintain, uh, we can say complex CSS roles, which which basically I'm I I just mentioned because of the speeding of the migration process. That's it. And, yeah, that's it. And, also, like, obviously, test and validate the migrated components to ensure that the function is expected. Uh, that's it.

    Describe a scenario where you had to implement secure restful APIs for a React application. What were the key considerations? Okay. So what I understood this question is so I have to create a scenario over there. So, like, So so let's consider a scenario, like, where we are developing a React application So that interacts with the, like, s database SQL database, uh, like, via API. So the API is API responsible for handling user authentication and retrieving data from the database of and all the CRUD operations. So, uh, like, we need to follow here. This is a scenario which I created. So we need to follow, as I can see with that, we need to follow the, like, some key considerations, uh, for engineering, uh, SQL, uh, API for this React application, which I described. So here, what we need to follow, like, implement the best robust authentication and authorization mechanism to ensure that only authorized user can access the API port and perform the specific task. That's it. And, obviously, authorization is this one. And, uh, like, we we need to validate, uh, like, all incoming data to prevent SQL to prevent SQL injection attacks and other forms of, uh, what are the malicious, uh, activities input. So we need to use the parameterized query or prepared sick statement to securely interact with the SQL database and avoid, uh, constructing SQL queries dynamically using user input. And, uh, also, like, we need to ensure that the data transmitted between the React application and the API encrypted using, uh, the prototype with the help of, uh, HTTP. Uh, we have this needs to be encrypted. And what else the key considerations? Obviously, the error handling and the logging part. This needs to, uh, like and e constitutions. Else, what I can do is the the one thing, uh, just just the last point that is, uh, like, ensure we need to ensure that, uh, the SQL API compiles with this, uh, industry standard security framework and regulation. Like, such as we have open web, uh, OWASP is their open web application security project. So, uh, so these this is one of the, uh, one of that. Uh, okay. And, I am not remembering right now. We have like, these are the, uh, like, industries adequate framework, like, security framework. Like, GDPR also there, uh, or, uh, like, uh, PCI d DSS is also there. That. So this needs to be by by addressing these key, uh, key consideration. We can secure it.

    What methods have you used to optimize desktop application performance, and how might those apply to electron JS. Okay. Actually, I'm not aware about electron JS much. Optimize desktop application performance. I have worked during my touch period on electron JS. So, uh, uh, the but the performance application the optimization technique is like what we can do is, like, we can, uh, we can, uh, in like, optimizing desktop application, like, involves, like, enhancing usability, improving performance, and maximizing user satisfaction. That is what we can do. And, uh, like, some if I spoke about some other, uh, points, that is, like, there was an application, but we can do we can optimize it, like identify and address performance bottlenecks, uh, to ensure smooth and, uh, responsive user experience. Obviously, optimize code, reduce, uh, resource usage, and implement caching and, uh, prefetching techniques to minimize, uh, load time and improve overall performance. This is this can be do. And, also, like, uh, we can prioritize the need and preference of users throughout the design and development process. Uh, like, we can conduct the user research, gather feedback, This is what we can do. Uh, like, this obviously, this apply this approach to electronic devices by considering interaction pattern, like, uh, interaction patterns when, uh, when designing these, uh, interfaces and software experience. So how might those apply to that? Well, just this is what else we can do? Obviously, responsive design. That is a plus point. Like, uh, the, uh, the the design desktop application to be responsive, uh, and adaptive to different screen size resolutions with the help of pixels and all the we have a lot of frameworks over there. We can use that. We can use media query. We can use Bootstrap. We can use Tailwinds. That's, uh, that's a lot of, uh, but make sure that, uh, we have to make sure that the screen size resolution and input methods, This optimize should be optimized. That's