professional-info
contacts
I'm a software engineer with over eight years of experience building modern, reliable, and scalable web applications. My journey has taken me from India to Germany, working in both global enterprises and fast-moving startups.
Throughout this time, I've focused on creating thoughtful user interfaces, improving performance, and delivering features that solve real user problems. I enjoy combining technical precision with an eye for clean design and usability.
What motivates me most is working with great teams, learning from diverse perspectives, and finding elegant solutions to complex challenges. I believe good software comes from collaboration, curiosity, and continuous learning.
As you explore further, you'll find highlights from my professional journey and the projects that shaped the way I think about technology and teamwork today.
FARO Technologies, Aachen, Germany
February 2022 → Present
At FARO, I develop and maintain interactive 3D web applications using React, TypeScript, and Material UI, ensuring smooth and reliable user experiences. I focus on performance, scalability, and consistent design through a shared component library and modern state management tools such as Redux Toolkit and Zustand.
Working closely with backend teams, I’ve contributed to data processing services written in Rust and built Azure Functions that automate large-scale data workflows. I also maintain a strong focus on quality, implementing automated tests with Playwright and React Testing Library.
This role has allowed me to grow as both a developer and a teammate — balancing technical problem-solving with collaboration, design thinking, and product impact. My contributions were recognized with the “Values in Action” award for impactful work on the SphereXG project.
AutLay - Automatisches Layout GmbH, Cologne, Germany
August 2019 → January 2022
At AutLay, I helped build responsive single-page web applications in a startup setting. It was a hands-on environment where I worked on everything from frontend architecture to CI/CD pipelines, learning to make fast, thoughtful decisions with limited resources.
This role strengthened my adaptability and gave me deep appreciation for simplicity, teamwork, and iterative improvement.
Cisco Systems India Pvt. Ltd., Bengaluru, India
August 2016 → March 2019
At Cisco, I developed enterprise-scale web applications used by major clients worldwide. I learned the value of accessibility, maintainability, and collaboration within large, distributed teams.
This early experience gave me a strong technical foundation and a global perspective on product quality and customer focus.
// code snippet showcase:
/**
* @returns - a flattened object
* @param obj - object to be flattened
*/
export const flatten = (obj: Record<string, any>): Record<string, string> => {
const result: Record<string, string> = {};
const flatten = (
currentObj: Record<string, any>,
path: string = ''
): void => {
for (const key in currentObj) {
const newPath = path ? `${path}.${key}` : key;
if (typeof currentObj[key] === 'object') {
flatten(currentObj[key], newPath);
} else {
result[newPath] = currentObj[key];
}
}
};
flatten(obj);
return result;
};
Experienced in modern frontend development with React and TypeScript.
Skilled in building scalable interfaces, optimizing performance, and ensuring code quality through testing and clean architecture.
Comfortable working with cloud services, CI/CD pipelines, and modern DevOps practices.
Always eager to explore new tools and approaches that make software more maintainable, accessible, and enjoyable to use.
// code snippet showcase:
/**
* @returns - a flattened object
* @param obj - object to be flattened
*/
export const flatten = (obj: Record<string, any>): Record<string, string> => {
const result: Record<string, string> = {};
const flatten = (
currentObj: Record<string, any>,
path: string = ''
): void => {
for (const key in currentObj) {
const newPath = path ? `${path}.${key}` : key;
if (typeof currentObj[key] === 'object') {
flatten(currentObj[key], newPath);
} else {
result[newPath] = currentObj[key];
}
}
};
flatten(obj);
return result;
};
Strong communication and collaboration skills developed through international teamwork.
Adaptable and open-minded, comfortable working in both structured and agile environments.
Proactive problem-solver with attention to detail and a focus on quality.
Positive attitude and willingness to mentor, learn, and continuously improve.
// code snippet showcase:
/**
* @returns - a flattened object
* @param obj - object to be flattened
*/
export const flatten = (obj: Record<string, any>): Record<string, string> => {
const result: Record<string, string> = {};
const flatten = (
currentObj: Record<string, any>,
path: string = ''
): void => {
for (const key in currentObj) {
const newPath = path ? `${path}.${key}` : key;
if (typeof currentObj[key] === 'object') {
flatten(currentObj[key], newPath);
} else {
result[newPath] = currentObj[key];
}
}
};
flatten(obj);
return result;
};
I'm a software engineer with over eight years of experience building modern, reliable, and scalable web applications. My journey has taken me from India to Germany, working in both global enterprises and fast-moving startups.
Throughout this time, I've focused on creating thoughtful user interfaces, improving performance, and delivering features that solve real user problems. I enjoy combining technical precision with an eye for clean design and usability.
What motivates me most is working with great teams, learning from diverse perspectives, and finding elegant solutions to complex challenges. I believe good software comes from collaboration, curiosity, and continuous learning.
As you explore further, you'll find highlights from my professional journey and the projects that shaped the way I think about technology and teamwork today.
/**
* @returns - a flattened object
* @param obj - object to be flattened
*/
export const flatten = (obj: Record<string, any>): Record<string, string> => {
const result: Record<string, string> = {};
const flatten = (
currentObj: Record<string, any>,
path: string = ''
): void => {
for (const key in currentObj) {
const newPath = path ? `${path}.${key}` : key;
if (typeof currentObj[key] === 'object') {
flatten(currentObj[key], newPath);
} else {
result[newPath] = currentObj[key];
}
}
};
flatten(obj);
return result;
};