
I am a Software Developer, working in web and hybrid application development, having 5+ years of experience in respective field. As part of my job, I've worked in several domain as Banking, Insurance, Fintech, Telecommunication, Healthcare, Hospitality, Payroll solutions and Trading. I love to code and program applications. In my spare time, you will find me on the beach or following my hobbies.
Technology Lead
Synechron TechnologiesSoftware Consultant
Nu10 Technologies IndiaSoftware Development Engineer
QuantInsti Quantitative LearningAssociate Developer
Capco TechnologiesFull Stack Developer
Perennial SystemsSenior Software Engineer
Till POS Technologies
WordPress

PHP
XAMPP

Oracle

cPanel

MySQL

FTP server

jQuery

Git

CSS3 & CSS5

Javascript

HTML5

Ajax

React

Angular

Vue.js
REST API
Node.js

Python

MongoDB

Apache

Slack
Jira

Skype

NetBean-IDE
Figma

Visual Studio Code

SaaS
NPM
.png)
Grunt
Android Studio

BitBucket

Github

Webpack

NodeJS

Postman

MySQL Workbench
.png)
Jenkins

Github actions

Material UI

Redux

Storybook

Sass

BEM

Handlebars

Loopback

Apollo Client

Sequelize ORM

HighCharts

Appium

Scala

Adobe Analytics
Cucumber

Firebase Analytics

Karma

Backbase
Fun loving person, quick learner with Excellent knowledge of front-end development.
- MYO2 Team Equal Experts
Quick learner and a good front end developer with a flexibility to work on backend.
- mClinica Team
1. Quantra -
- This product is an online platform used by the customers to learn Algorithmic Trading Courses. It helps mentors to create courses for their students It is a web application made with AngularJS and new modules with VueJS. The back-end was built with Express, MySQL.
Written microservices in Express (MVC Architecture) and MySQL
Made a responsive UI in AngularJS Sass, Vue JSX, with custom CSS using BEM.
Migrated old jQuery UI to latest Vue3 components
Fixed productions bugs and improvements in Product based on customer feedback
2. QI Website -
- This is a company website used by the customers to purchase company products. It is a server side rendered application with handlebars, jQuery. The back-end was built with Express, MySQL.
Written microservices in Express (MVC Architecture) and MySQL.
Made a responsive UI in jQuery handlebars, migrated old code to latest Vue3 components
Worked on leadSquared analytics and created mailing, document creation, CRM and notification services, fixed productions bugs and improvements in Product
- This product is a complete hospitality software solution used by Bepoz. It helps large to small scale hotel businesses to manage their operations. It is a hybrid application made with React Native and Typescript targeting Web, Android and iOS. The back-end was built with NodeJS, Apollo client for GraphQL and DynamoDB.
Written microservices in NodeJS, Apollo client for GraphQL and DynamoDB, with unit tests. (Using gql-server and gql-federation for Gateway)
Made a responsive UI in React Native, with unit tests and styling with React Native stylesheet.
Worked on Single Table design pattern in DynamoDB and also used AWS lambdas with microservices. and Written cypress tests for the application
Built the whole feature from frontend to backend.
- This product is a payroll solution used by the Australian Government. It helps organizations and individuals to pay the salary of their employees in an easy way, along with paying taxes to the government. It is a web application made with React and Typescript. The back-end was built with Loopback, DynamoDB.
Written microservices in Loopback, with unit tests.
Made a responsive UI in React TSX, with unit tests and custom CSS following BEM.
Worked on the Single Table design pattern in DynamoDB and also used AWS lambdas with microservices.
Worked in Agile Methodology and built the whole feature from frontend to backend.
- We developed a hybrid application for SCB, Thailand for their product.
- The project targeted Android and iOS applications using contemporary emerging hybrid technology Ionic 2 based on Angular framework.
- Back-end was built by MySQL and Spring Boot and CI / CD was done using Jenkins.
Created custom JavaScript plugins to work with Ionic-Cordova, Angular components with Karma unit testing, React Native components for few requirements, complex UI designs and API integration with front-end.
Made design charts, security, camera, notification and GPS map modules with custom libraries, also used firebase analytics and push notification.
Worked in an Agile-driven environment to effectively maintain project timelines and utilize available resources.
Designed and executed security measures such as firewalls and encryption, session management.
Used libraries such as D3 JS for graphs and visualizations, CryptoJS for security, NativeStorage for storage features and other third party libraries for few Mobile Native features.
Hello there. I'm Manish Kerekar from Pune, Maharashtra, India. I have over eight years of experience in the industry, mostly doing web development and hybrid development. Initially, I started with AngularJS as a front-end engineer. And for the past six years, I've been doing React and React Native on the front-end side. So, I also do full-stack development from the past six plus years. So, combinedly, I have eight years of experience in web development and six years in full-stack development. So, that's pretty much about me. As part of the domain, I can say that I have worked in the banking domain, telecommunication, healthcare, adjunct domain, payroll solutions, POS solutions, and algo trading, basically. So, that's pretty much about me.
I want to be a requirement of this new V6 syntax and then the React Native, and most of the hybrid development part, which aligns to my previous experience as well. Other than that, I have like I have been part of product-based organization and service organization both, and I have like I have worked in a startup as well. So if I see the whole requirement, I think I can I am I can be the perfect match for this particular tool, by considering my previous experience working as a React and React Native developer and then my expertise in advanced JavaScript and TypeScript. So I think that's why I'm a good fit for the role.
So recently, I have built an application for my freelancing project. Like, we created a dating app. Doing that right swipe, left swipe, and then finding different profiles on the map and then sorting them based on your distance from it and then switching between the tab navigator and stack navigator, and then switching between those pages with animations. And then, other than that, basically, a whole dating app like Tinder or Twilio Madly. So that was the most impressive thing I think I can say, building React Native, having by default support of Google Maps and Apple Maps by integrating the map libraries within it. And then, the other plugins like camera and all. So we use the latest React Native. So, previously, it was having the React bridge within it, but it got removed in the latest version in February. So I think we followed that one. So now it's more smooth. So that's, I think, the most impressive thing I have built recently in React Native.
What's something technical you've changed your mind about? Yeah. So, I like reading articles, and then I also write some articles. I started writing articles on Medium. Recently, when people started using AI tools more than two years ago, like, there's been a change in my perspective. As a developer, there's a chance where you think, "Are you going to get replaced by AI or something like that?" So, when I actually started using these tools, it basically improved my coding abilities, and I got more time to think rather than to code. And then, if I write a correct prompt, I'll get my code the way I want. So, my perspective on AI has changed over the past year since I started using it for coding and other stuff. If I had told you the example of the previous dating app, the UI was there, and I used that UI to create the layout from AI. I matched the layout style fixes with JavaScript in React Native. So, that's what I've changed. That's the technical thing that changed in my mind over the past year.
Most developers don't know how to document their code. So they get the task, create it, create a PR, get the review command, fix it, and do the same repetitive and redundant stuff again and again. This is what costs time to the company, to developers, and to the team altogether. This can cost delay in project deliveries or feature deliveries. I think the way you should write code should be documented somewhere in the project. If it's not documented, then by default, looking at any part of your code, you should get an idea of the kind of code quality needed in this project. That's one thing. Having code documentation and writing documentation for the code you've created is important. That's the major thing people don't think about. Other than that, whenever they review, many people also don't know how to review code. I think one optimization that can be done is considering how the current code will affect future outcomes of that particular feature. This can also be done by learning or upgrading deleted syntaxes of languages, which should be learned or upgraded every few months. Because technology is changing drastically, you should keep yourself updated. People don't do that, and that's why they write older code in the new era. That's one thing. Other than that, the review is done, the language syntax is done. If there are new paradigms as part of any framework or library coming, then you should follow that. Like, people initially used Redux, then they went on with Redux Saga, and currently, people are using Zestran. You should keep track of what's coming new as part of that particular framework or library, and then you should keep yourself updated with that one too. So I think every developer should know this.
Okay. So, basically, for error management in a React Native app, I should have a global error handler at the app level. It will wrap the whole app around it. And whenever any global error happens, it will throw the required component or fileback component. I think suspense is also supported here in React. So I think we can use that one too to do error management. Other than that, while creating previously, people have created error boundaries too where we used to catch the error and get to know from which component it is happening. So we can write a custom function to get an idea of what particular thing is failing or what particular component is failing in the development mode. For the production mode, it's a bit different because in the production application, the application is customer-facing and customers don't want to see any technical kind of errors in the production application. So in that context, the error management differs. We basically change the default back compass to something else, instead of developers, it's customer-facing. So customers will see a generic error component maybe where it will say something went wrong or an API gateway is down or come back or try again. But in the case of the developer-facing or the developer's build, basically, we should be getting what component is failed and what are the steps we need to follow to go through that error, basically, or to debug that error.
It wasn't the system I designed, but I have done the migration from PHP services to Node.js services and why it was hard because the PHP server was monolithic, and the database was also connected tightly to that particular application. The problem was that when we started migrating to Node.js microservices architecture, we migrated feature by feature where many of the services were interdependent on the data services or the shared services for resources. So, that was a complex task. I have done previously with the partnered client. The issue we faced was supporting the existing production website as it is or the existing product as it is and then updating to the new feature. So, we used the versioning system. We created different v1, v2, v3 APIs. And then, we first created the APIs, once the APIs were well tested, and then we connected v2 and v3 APIs by changing the URLs in the frontend side. And then, by thorough testing, we moved it to staging. We tested the staging, and then we did UAT as well. And once we got a go-ahead from the testers, from the testing team, we deployed it to production. So, that's the way we followed. So, I wasn't the one who designed it, but I was part of the team who built it, actually. So, that's the migration from PHP services to Node.js services, which is the most complex thing I have done so far in the backend system.
You like the function to calculate the total amount per day table. And if the table is on the table wheel, which is constant for all. And this one tip that is added for each table. How do you use green code principles to improve this function? Additionally, how would you modify this function so it could be used across different tables? I want different restaurants. So if I see the JavaScript code over here, so it's creating a, constant object, like, person, one amount, person two amount, three amount, tax percentage. In the raw bill amount, it's creating raw total and then calculating all the three amounts into one and then adding tax amount. Now it will throw error here because, we show it shouldn't be using const if here it is going to assign the value again. So if you want to do it, we can create, like, raw amount or something, some kind of variable, and then raw total will be a different one. other than that, I think okay. To create this function for different table. Okay. So the problem I can see here, like, if the per number of people, increases, then, the number of parameters will increase. So instead of doing that, I think, we should be providing the table reference over here. And I think, the table amount that, may include the, like, person one, two, three depending upon the person present at the particular table. So instead of the initial three parameters, we can have the table variable, where, it will be object having the amount and, other, related details to the people on that table. What about different restaurants? I think, if you go class based over here, then creating, class for, the, restaurant and then class for, each table will make more sense because I was being a part of one of the, one of the project was point of sale application. In my experience, it was still paused where we used to do in such a way where basically table, like, we had this point of sale, software where basically, each table were referred as a object. And then, yeah, for the, different kind of, restaurants, for example, if there is one floor, like, Ground Floor and our First Floor, then we used to, switch tabs in between them. So in that way, I think we will be providing the context of that particular restaurant as well with along with the table. Or within that table, it will get the idea, like, where that table situated is in. So I think by creating the first parameter object in such a way to have the table details and the restaurant details, we'll make more sense instead of having multiple parameters to, get the person amount. Again, the tax percent is a 12%, which is so we can have a constant variable, which, will take care of it. And then by changing that only, it will be, changing in all other positions. And tip is also again, will be part of that table object because there can there is no standard way of tipping, I think. So, yeah, it will be depend on each table, I guess.