profile-pic
Vetted Talent

Lalit Kumar

Vetted Talent
A highly energetic and result oriented Java Developer with years of industry experience in multiple domains. Experience in analysis, design, development and integration. Currently working as Software Development Engineer with Cradlepoint.
  • Role

    Software Development Engineer - 3

  • Years of Experience

    9 years

Skillsets

  • JMeter
  • Swagger
  • Sumo Logic
  • RESTful API
  • RabbitMQ
  • R3 corda
  • Pager Duty
  • MySQL
  • MongoDB
  • Meteor Js
  • Kubernetes
  • JUnit
  • Java - 7 Years
  • Jenkins
  • JavaScript
  • Git
  • Docker
  • Datadog
  • PostgreSQL
  • AWS
  • Java
  • Micro services - 5 Years
  • Blockchain - 2 Years
  • Spring Boot - 4 Years

Vetted For

7Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Kotlin Backend EngineerAI Screening
  • 60%
    icon-arrow-down
  • Skills assessed :Kotlin, Restful APIs, Spring Boot, AWS, Git, Postgre SQL, SQL
  • Score: 60/100

Professional Summary

9Years
  • Jan, 2022 - Present3 yr 9 months

    Software Development Engineer - 3

    Cradlepoint
  • May, 2019 - Jan, 20222 yr 8 months

    Product Technical Lead

    ChainThat Limited
  • Jul, 2016 - Apr, 20192 yr 9 months

    Senior System Engineer

    Infosys Limited
  • Jan, 2016 - Jun, 2016 5 months

    Intern

    Infosys Limited

Applications & Tools Known

  • icon-tool

    REST API

  • icon-tool

    PostgreSQL

  • icon-tool

    Python

  • icon-tool

    Java 8

  • icon-tool

    Java

  • icon-tool

    Amazon DynamoDB

  • icon-tool

    Apache Kafka

  • icon-tool

    RabbitMQ

Work History

9Years

Software Development Engineer - 3

Cradlepoint
Jan, 2022 - Present3 yr 9 months
    Working on Commerce and Internal apps India team. Designed, implemented and delivered multiple features, enhancements for Net Cloud Manager. Collaborate and guide Interns and other developers. Technologies and tools used are Java, Spring Boot, Hibernate, AWS, PostgreSQL, Redis, RabbitMQ.

Product Technical Lead

ChainThat Limited
May, 2019 - Jan, 20222 yr 8 months
    Primary owner of several modules of the core product, responsible for their development and maintenance. Took complete responsibility of design, plan and implementation of features as a team lead. Actively involved in innovation and productization of new feature ideas and driving ideation to research outcomes.

Senior System Engineer

Infosys Limited
Jul, 2016 - Apr, 20192 yr 9 months
    As a Software Developer, trained and worked on various modules of Cisco's Product. Experience in working with Automation, Customer Escalation and Sustenance team. Collaborated closely with other team members to plan, design, and develop product solutions.

Intern

Infosys Limited
Jan, 2016 - Jun, 2016 5 months
    Industry training consisting of Data Structures, Database, Java & J2EE. Open-source project implementation of Procurement process.

Achievements

  • Spot Award (Feb 2023): For consistently delivering tasks and completing customer centric API v3 write designs.
  • Corda Certified Developer (Feb 2020): Issued by R3. For having thorough understanding of the architecture of Corda and possessing the development knowledge.
  • Beyond Greatness - Code Ninja Award (Aug 2020): For the ability to consistently deliver effective and optimized code.
  • Infosys ENG Pinnacle Award - Best Engagement Partner (2017 & 2018) Certified by Infosys for specialization in Java technology and for completing project successfully (2016)

Major Projects

3Projects

Net Cloud manager

    Worked on Salesforce Disentanglement to remove dependency from Commerce Services. Designed and Implemented features on data enrichment, asynchronous updates and regrades handling for 11 microservices. Changes in device and license lifecycle of the products such as Order, Provisioning, Entitlements, etc. Also supported Pager Duty and Cascade support. Responsibilities such as code reviews, deployments, delivery and demos.

Reinsurance Blockchain Solutions

    Developed Role Based Access Control, Active Directory setup and implemented OAuth 2.0 authentication. Full stack implementation of multiple features which includes back-end service design, RESTful APIs and front- end using Corda, Java, Spring Boot and MeteorJS. Implemented reinsurance processes such as security, market, placement, claims, accounting, settlements premium and various calculations. Improved UI latency issue in production server from 30 seconds to 3 seconds. Worked on Performance and Load testing scripts using JMeter. Worked on event streaming feature which feeds real time data on Corda state change to multiple endpoints. Mentored developers and new joiners across teams on project architecture, business designs and requirements.

Cisco Prime Collaboration Provisioning

    Resolved long standing and time critical defects and upgraded interface thus improving reliability. Worked cross feature with test automation team using Watir, removed redundancy which resulted in optimized run time. Experience in dealing with Customer Escalations across the globe to perform necessary analysis, troubleshooting and resolving the issues which led to 30 percent reduction in total case count. Java, J2EE, JSP, Watir, SOAP, PostgreSQL.

Education

  • B. Tech, Computer Science Engineering

    Maharishi Markandeshwar University, Mullana (2016)
  • Higher Secondary

    Kerala Public School - Kadma, Jamshedpur (2011)

Certifications

  • Java

AI-interview Questions & Answers

So, hi. My name is Lalit. I'm currently working as software engineering 3 with Scrapoint. So, uh, my total experience is around 8, like, soon to be 8, which includes the internship period has been. So if not, uh, if if we do not consider the internship, it's 7 and up. Um, I'm currently working as a Java back end engineer and working with multiple microservices over here. So this is a product based company which deals with commercial routers, private SIMs, private networks, and everything. So I'm working working on it using Java, uh, AWS, RabbitMQ, Postgres, DynamoDB, Python as well. So it's most of the all of the latest intelligent technologies over here. Uh, prior to this, I used to work with, which into reinsurance domain and work with Blockchain Architectures, the Blockchain, uh, Networks as well, uh, where we used to develop the entire reinsurance business into that. And prior to it, I used to work with Infosys, which was the first company. Again, All of my relevant experience has been in Java and Java development as well. But, uh, some of them with customer supports and customer supports and, Uh, a little bit of automation using VOTA, which is we have. But, uh, uh, mostly, it's been developed

When did you use a rebase instead of a merge in git? So merges is used when we are doing we're doing some kind of changes, like when we merge from one of the changes to our branch. Is done when there are multiple kind of changes, and I think when, uh, 2 there are 2 open MRs or PRs in case of it. So if one of them goes in and then the other the other needs to be rebased on top of it so that the the new the new changes which went in the roster is also present in also present in the other MR as well without any conflicts. So that is necessary. I just did 3 ways. But merge is like when we are pushing the renewal changes to the master branch or any other parent branch.

What are the contact decisions to ensure the data consistency using transactions in SQL, uh, which may ensure that each of the transactions are. Like, it's atomic consistent Uh, isolated and this one more. So data consistency needs be there. Like, uh, there's only 1 update happening at a time. Uh, and, uh, the update is threat See if there is no race conditions which are happening. And, uh, the data, Uh, if it is, uh, the database, if it's sharded when we showed not Sharded. There is there is a database replicas present in all of the replicas are updated eventually. So it's, yeah, eventually Consistent on that time on the time frame. Unless and this, uh, the made most consistencies always required. Any other outgoing any other incoming calls should be kept on waiting before we try to update any kind of a data or any creative data. So there is no, Uh, no what what's the term? No collisions happening on that.

The following code snippet are the full end point is there. Can you identify the importation issues? Post mapping create a response entity. Uh, user deposited to the c would return. Response entity dot okay. I think it should be create responsibility to create user. That should be it should be, uh, if it is Creating a new user that should be 401, not 400. Okay. Sorry. 201, not 200. So okay is 200. So we should use 201 or, uh, for the new entities. Other than that, uh, I think this is fine.

Consider the following code encoding. What is the purpose of dash? And, uh, where text is defined as valid text This is going to string. Okay. There's a purpose of version. So It's kind of a any kind of so value text Could be anything. But if this is this, like, it could be list, could be a single object. That sense. Not really familiar with Kotlin. I'm more like a Java guy. So, Uh, not sure. I need to practice it. I'm not sure about this one.

How could you secure sensitive risk for endpoints in Spring Boot applications? So sensitive, uh, and endpoints could be like, there could be multiple ways, uh, over there. There could be, uh, it could be secured, like, where the g w two take ends or or a bare token in that sense. Where the token we're talking to specify like whether the user has an access and whether the user will be provided access. It could be rule based access control. Where if, for example, a certain set of endpoints could only be provided access by the user who have that role and have the permission to, access that action. And the token could contain like, when the user will contain, the token will contain that information. So before accessing the endpoint, the token will be validated that whether that particular user has permission to exit this particular endpoint with the following with any kind of h t p action. For example, certain user could readily access get, but admin user can access all of this. So those kind of thing will be there. And that needs to be evaluated properly. Okay? Uh, that is why I think how we can secure the rest of the endpoint. And the rest end point should also be directed to the security mechanism. It cannot come in as indirectly like the authentication the authorization should be done properly before we access that. So that is how we can secure

The following coding goal business uses spring boot to connect to process. My data server might not initiate the user So the data says might not be initialized Probably if because the spring boot and the configuration, like, it it auto it auto checks whether the following username and the password, Uh, I configured properly or not. Like, further excuse me. So the spring would auto checks for that configuration. So the other the configuration and the and the property source, we give the class Yeah. I will take where it will contain all the information. Configuration will auto configure it, uh, in the back end. So if you provide the incorrect username and incorrect Password or any of the URL. It will auto check whether this particular user has access for, like, particular no. This password. Whether it has access to this person URL or not. So those kind of configuration and the checks are done behind the scenes, by the others. So if those are incorrect, uh, Spring Boot will not allow us to go to the next source. That is why the data source might not be initialized properly

How do you handle versioning in the restful API design with Spring Boot? Uh, so handling, uh, is done like when at the rate components. Uh, I don't know, handling configuration, like, when we say we give the data source over there. Right? The URL, uh, of it along with the host and the v one and the v three. Uh, for example, if it is an internal, we use v one. If it is a v three so if it is an external, we like, for now, system we use v threes. Uh, other than that, I think it should be auto upgraded. For example, if there is any change, uh, any change in the endpoint, uh, then we increase it, like, 1.1.1.1.2. Like, in that sense, we have to define it. Some of the application does not allow, like, backward compatibility. So we need to handle that. And also, uh, if you upgraded, we need to uh, depreciate the old endpoints along with the time. For example, it might take we could uh, there are certain ways where we could, like, let them know, intimidate the users that whether how do we we are going to depreciate there and we uh, going to release the newer version of it. And, uh, given the time, we can use it slowly and or we can have, like, the uh, the complete support for the old older or the backward versioning will be removed. So that is how we can handle the the restful API uh

How do you use advanced gate features to manage a hot fix on a production branch while working on a feature branch? I think while, uh, using cherry pick, is that, Uh, what the answer you're looking for? Like, we could cherry pick a particular commit. So we can, uh, we could working on a feature branch, we can just Test that hotfix on the feature branch. We could see that everything is working into it, do all kind of testing, and then just cherry pick that particular comment onto the production branch and the user and the user on the production branch. That is how we can, you know, manage it without while not moving the entire thing from a feature branch to production, but only that particular commits.

What strategy would you apply to ensure 0 time downtime deployments for a spring boot power services? Uh, so here, uh, what we use is Here, what we use is, like, the Docker and Kubernetes. So we have the different ports for each of the services. So whenever we need to deploy a Spring Boot powered location, uh, to the AWS, which is in the cloud. What happens is, like, we could create a new, uh, the new service New the new service or the new port new service port, uh, with the latest, uh, latest version on this. And while the timer is not up, We we are still continuing running on it. And once it is deployed, we bring down the older version and redirect that all the connection services to the newer parts. So that is one of the approach.

Benefits to coding support we provide for the back end development. Uh, I'm not sure about that. Sorry.

Has been used in a Spring Boot application for smoother feature rollouts. Well, there's one approach where I think we could use feature bindings over here. Like, uh, so we could ensure that the feature bindings are there. For example, we don't want, uh, we are testing out a new feature and it is in a beta version, but we want to test it out to a larger live customers out there. So we could there is a if we introduce a new feature, we could introduce feature band effect, feature toggles, what what summation over there. And that could be opened up to the particular uh, what a selected group of customers to test it out. So if, uh, the feature bindings are enabled for those group of customers, they can those features will enable, and we can, uh, live test on them. And based on their response, their feedback, and any, we could test and fix everything before rolling uh, out of the larger audience. So that is how we can control each and each and every newer feature over there. Also, for example, if there is a beta with Lease, uh, we could use a subscription model, like whether the newer user new selected group of customers are interest interested in those, and so we can enable for only a group of them. Uh, that is how