profile-pic
Vetted Talent

Nishant Kora

Vetted Talent
A resource full and multitasking professional with wide knowledge in Designing, Coding, Requirement Gathering, Testing, Group Testing, Deployment on Production and Staging Server, Bug Fixes, Live Issues, Maintenance with closely around 3 years of experience in startup organization. Expertise in Scraping data from OTA’s, OTA Integrations, Live Issues, Bug Fixes.
  • Role

    Senior Software Engineer

  • Years of Experience

    7 years

Skillsets

  • Unit Testing
  • Terraform
  • Express.js
  • FastAPI
  • Flask
  • LangChain
  • MLOps
  • Next.js
  • React.js
  • Redis
  • Redux
  • PySpark
  • Vector databases
  • Angular 8
  • API development
  • Ci/Cd Pipelines
  • Logging & monitoring
  • RAG pipelines
  • Sast/dast security
  • Git/gitlab ci/cd
  • Llama/mistral
  • Blue/green & canary deployments
  • jQuery
  • Python - 5 Years
  • AWS - 2 Years
  • AWS - 4 Years
  • JavaScript - 2 Years
  • Django - 4 Years
  • Celery
  • Docker
  • Elasticsearch
  • gRPC
  • Jenkins
  • Python - 5 Years
  • Kubernetes
  • MySQL
  • RabbitMQ
  • Selenium
  • Microservices
  • MongoDB
  • Node.js
  • NoSQL
  • PostgreSQL

Vetted For

12Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Senior Full Stack Engineer (React/Next.js & Django/Python) - REMOTEAI Screening
  • 63%
    icon-arrow-down
  • Skills assessed :Ci/Cd Pipelines, Communication Skills, SDLC, HTML5/CSS3, Next Js, PostgreSQL/MySQL, react, Restful APIs, AWS, Django, JavaScript, Python
  • Score: 57/90

Professional Summary

7Years
  • Dec, 2024 - Present1 yr 6 months

    Senior Software Engineer

    Amphora
  • Dec, 2021 - Dec, 20243 yr

    Back End Developer

    Accenture
  • Feb, 2021 - Nov, 2021 9 months

    Full Stack Developer

    MBO Partners
  • Jan, 2017 - Jan, 20192 yr

    Associate Software Engineer

    AxisRooms
  • Mar, 2019 - Mar, 20201 yr

    Software Developer

    Prime4Inspection
  • Jun, 2020 - Jan, 2021 7 months

    Software Engineer

    Johnson

Work History

7Years

Senior Software Engineer

Amphora
Dec, 2024 - Present1 yr 6 months
    Converted functional requirement doc to technical specifications with each component, features, modules being listed. Architected and segregated system design in segregated microservice each by component, modules used, database, communications and interconnected with all other microservice to create complete system design. Architected and developed a scalable MCMS platform, designing database models, secure APIs, microservices for clause lifecycle and versioning, with endtoend logging, realtime notifications, and robust workflows.

Back End Developer

Accenture
Dec, 2021 - Dec, 20243 yr
    Automated gRPC proto compilation using GitLab CI/CD with Slack notifications, enabled HTTP support for gRPC services via Kong Gateway, and maintained clear, uptodate API documentation. Developed, tested, and debugged highperformance microservices and APIs, performing unit and functional testing to ensure correctness.

Full Stack Developer

MBO Partners
Feb, 2021 - Nov, 2021 9 months
    Added several Tabs on landing page for business use case flow Built page for Crud operations where manage and flow of data across different sections Built parent and child relationship using agreed for certain use cases. Backend APIS to satisfy all criteria, validations according to business needs.

Software Engineer

Johnson
Jun, 2020 - Jan, 2021 7 months
    Built endtoend reporting platforms with rich UI components, automated weekly/monthly reports, and experimentdriven analytics. Developed scalable backend architectures using microservices, robust database design, business validations, schedulers, and seamless UIAPI integration with configurable rules and alerts.

Software Developer

Prime4Inspection
Mar, 2019 - Mar, 20201 yr
    Engineered Pythonbased data pipelines for automated report generation, validation, and statistical processing using Django, schedulers (cron/Celery), and multiprocessing for parallel execution. Designed and optimized backend systems including relational database schemas for dashboards and job processing, REST APIs with efficient serializers, Redisbased caching, and integration testing across Django modules.

Associate Software Engineer

AxisRooms
Jan, 2017 - Jan, 20192 yr
    Built and maintained highperformance SPAs using React.js, ES6+, HTML5, CSS3, and Next.js with SSR and JavaScript for responsive design, consumerscale applications.

Major Projects

2Projects

GoldenEye Product

Jul, 2017 - Jan, 20191 yr 6 months

Knights Templar Product

Jul, 2017 - Jan, 20191 yr 6 months

Education

  • Master of Computer Application

    PES University, Bangalore (2017)
  • Bachelor of Computer Application

    Rani Channamma University, Belgavi (2014)

Certifications

  • Scaler software engineer

    Scaler (Jan, 2023)
  • Scaler software engineer

AI-interview Questions & Answers

Could you help me understand more about your background by giving a brief introduction of yourself?

Describe the process to incorporate a diverse base development environment for a Django application, ensuring alignment with production. Describe a process to incorporate a Docker-based development environment. And, Docker-based development and operations, showing alignment with production. So, first, we need to create separate configs for each environment initially. As we have a Docker-based replication, we need to create separate ports for each one. Again, first, we could create a Dockerfile, which will contain settings for each environment - for development, staging, and production. Once development and production are set up, we need to create a Dockerfile for each app, for Docker-based applications as we have our apps. Inside our Docker project, we have our apps, like each separate app should have a separate Docker environment and a separate environment. Either we go with that approach or keep separate environments in a separate repository. So then, we can use individual things. It could be deployed on Kubernetes using separate segregation of files.

Setting up best practices for managing a session state in a load-balanced environment. To manage session state, we would use a stateless approach for storing session data, like Redis, which can be accessed by all backend servers. We configure Redis to use the state, and it can also be used inside our application or a load balancer within our application, where requests are distributed based on load balancing strategies. We move requests between servers and use Redis for temporary storage. For a React application, we can use React state for temporary storage, and for a Django backend, we maintain session state at the application level itself. This is how it should work.

How do you optimize an extra JavaScript application? Load time utilizing in SSR feature, particularly for data-heavy pages. The first approach is to use efficient caching strategies where we can optimize it, then we have the server-side box to fetch data at request time and deliver pre-rendered HTML pages to the client, which improves initial load time and SEO. Another approach is to keep the load packages compiled each time, so that the application will be loaded faster. We can also use caching headers to leverage repeated data and reduce frequent data fetching. We can minimize the load time of an API so that the initial load or application will be utilized very fastly. We can also have pagination or load data lazily. That's another kind of upgrade. We can also use CDN caching instead of loading the data, then we can use the data from a caching technology that stores the data in CDN at a particular server. This is how we can optimize data-heavy pages.

Can you describe a strategy to effectively manage a state? A strategy to effectively manage a state is to use reducers within our providers to implement complex state logic, and then use the use context hook in any child component to access the state by reducing prop drilling. We can create custom hooks for repeated logic, making our code modular and reusable. Then we can use React memo and use memo to prevent unnecessary re-renders, and even split large contexts to prevent unrelated components from re-rendering, resulting in faster rendering. This is how we can work on managing multiple states across an app utilizing context APIs and hooks.

Considering a high traffic web application, we ensure that it has read and write operations in place, maintaining asset properties without compromising performance. The first option for a high traffic web application is to keep two separate databases: one for read and one for write. All application reads happen from a specific read database, while all writes occur in another instance of the database, where only writes happen, and the writes are synchronized to the reads to make the application faster and prevent conflicts between read and write operations. If we have very high rates of reads or writes, we can read data simultaneously across read replicas. We can then use indexing strategies, such as a binary search tree or specific algorithms, to implement fast indexing searches. Additionally, we can use replication and sharding strategies to make data read faster. We can also keep common data in caches to speed up data fetching. For bulk writes, we can use asynchronous processing to write data quickly for large volumes. We can then distribute queries across different machines to reduce the workload. This is how it would look for a high traffic web application.

Full stack engineers often take a number of questions. 7. Okay. Full stack engineers often handle both server side and the client side core. Full stack engineers often handle both the server side and client side codes. The Django code snippets below, please explain what might be wrong if the view function is not creating a new record in the database as expected. Please explain what might go wrong if your function is not creating the database. The first option is, we need to check the logs so that we can determine the kind of error we are getting, and then check the error logs and work on those things. And then we need to apply all the constraints that are required by the database. For example, primary constraints, or the data value should not be null. Even if that's the second kind of check. And if there is some kind of manual commit required, we also need to take care of it. And even we need to ensure that the database model is being created for whatever record object we are creating. So these are the four cases where we can consider on it.

For a given Python code that enables restful API design patterns in Django, explain what could be improved for better scalability and maintainability. To improve scalability and maintainability, we can start by using proper spacing and punctuation for better readability. We can then remove the reading of unnecessary data in the filtration to improve scalability. Another technique is to paginate the data for high scalability, and we can also use caching. Filtering and caching are two key techniques to improve scalability and maintainability. We can also keep the view as lightweight by using pagination. Additionally, we need to use dependency injection for security. These are the strategies where we can consider for better scalability and maintainability, as well as readability. Other than these things, we can consider scaling the data by using replication. If many people come, the data can be read very simultaneously on this caching. We can keep two separate servers, one for reading and one for writing. As soon as we see that 80% of the data has been used for the servers, we can increase auto-scaling and enable it so that the scalability can be improved. We can also segregate this among class items at a query set and a serializer. We can segregate the create and query set into two separate classes so that even the readability is also much more easier. We can also create some kind of an index on the database so that it will be read very much faster. We can use raw queries instead of the Django framework for fetching the database. We can use raw queries so that the data will be much more faster. Instead of serializers, we can validate the data by using manual JSON, and then we can save the data without validating inside the serializers.

So how do you design a real-time collaborative editing feature in a Django-based web application with simultaneous edits on PostgreSQL? How do you design a real-time editing feature in a Java-based web application with simultaneous edits on a PostgreSQL database? So, the first approach where we can use is integrating WebSockets for live updates, allowing clients to receive immediate changes. Then, we implement a concurrency control system to handle simultaneous edits, where each change is time-stamped and validated to prevent overwrites. We can see those time stamps and overwrites, and only edit the things required for those timestamps. And then, we can use our release for managing the state for conflict detection, which supports real-time. We can track a cursor in real-time for multiple edits as well. We can maintain it through using IDs, where we can track it down completely. We can maintain its state somewhere and read those states simultaneously for multiple edits, using IDs in combination with time stamps and when the time stamp.

Can you devise a strategy to implement advanced search functionality with filters and full text search capabilities in Django application? So, for this one, we can use an Elasticsearch where we have an advanced search as well as a partial text search as well as full text search. So in Elasticsearch, we have an approach where we need to sync the whole data into an Elasticsearch database. And whatever strategies we use, those things can be implemented. Or other strategies, either a full text or search based on that one. The Elasticsearch strategies will give us this one. And even we can go ahead with the search index where we can collect the search index on the database so that it will be very much faster. Then we can integrate some kind of filters. This is like a manual approach with some kind of advanced approach. Like, even we can implement some filters, like multiple filters can be introduced so that only those filters in that the query will be much faster. And then we can create some kind of search form, well, kind of filtration, and then we can have some kind of use in a database where we can filter those things. And then we can even highlight the matches to the matching keywords and the results that is equivalent to the Elasticsearch database. Either way, then we can keep it in a cache and do some kind of indexing for a faster search literal for optimization. So what else I can suggest is that it depends on the situations and then application needs and the requirements where we can design these things as advanced search will come with multiple facets. So based on the requirements, we can go ahead on this one.

How do you ensure cross browser and cross device compatibility for complex CSS layouts in response to React application? Do you ensure cross browser and customize compatibility? So, we can use a normalized CSS with default standard sizes. Then we have flex boxes for responsive designs or grid center flex boxes. Based on these things, we can use flex boxes. We have media queries for different pixel and width sizes. We can test on multiple browsers and use different portals to test. We have responsive units like REM or percentage. We can also use viewports or view height and view width to automatically detect size. These are the strategies we can use for cross-browser and cross-device compatibility for complex CSS layouts in React applications.