Duration: 60 minutes
Closures
Debounce and Throttle
Promises
Promise.all()Promise Chain Output
Promise.resolve(1)
.then((val) => {
console.log(val);
return val + 1;
})
.then((val) => {
console.log(val);
})
.then((val) => {
console.log(val);
return Promise.resolve(3).then((val) => {
console.log(val);
});
})
.then((val) => {
console.log(val);
return Promise.reject(4);
})
.catch((val) => {
console.log(val);
})
.finally((val) => {
console.log(val);
return 10;
})
.then((val) => {
console.log(val);
});'this' Keyword Behavior
const obj = {
dev: "bfe",
a: function () {
return this.dev;
},
b() {
return this.dev;
},
c: () => {
return this.dev;
},
d: function () {
return (() => {
return this.dev;
})();
},
e: function () {
return this.b();
},
f: function () {
return this.b;
},
g: function () {
return this.c();
},
h: function () {
return this.c;
},
i: function () {
return () => {
return this.dev;
};
},
};
console.log(obj.a());
console.log(obj.b());
console.log(obj.c());
console.log(obj.d());
console.log(obj.e());
console.log(obj.f()());
console.log(obj.g());
console.log(obj.h()());
console.log(obj.i()());Event Loop and Microtasks
console.log(1);
const promise = new Promise((resolve) => {
console.log(2);
resolve();
console.log(3);
});
console.log(4);
promise
.then(() => {
console.log(5);
})
.then(() => {
console.log(6);
});
console.log(7);
setTimeout(() => {
console.log(8);
}, 10);
setTimeout(() => {
console.log(9);
}, 0);var vs let in Loops
for (var i = 0; i < 5; i++) {
setTimeout(() => console.log(i), 0);
}
for (let i = 0; i < 5; i++) {
setTimeout(() => console.log(i), 0);
}Hoisting and Variable Scope
var a = 1;
function func() {
a = 2;
console.log(a);
var a;
}
func();
console.log(a);
if (!("b" in window)) {
var b = 1;
}
console.log(b);Array.prototype.reduce Polyfill
reduce methodDuration: 60 minutes
Build a To-Do List Application with the following requirements:
Promise.resolve(1)
.then(() => 2)
.then(3)
.then((value) => value * 3)
.then(Promise.resolve(4))
.then(console.log);Duration: 60 minutes
Interviewer: Lead Engineer
Project Discussion
Optimization Techniques
React Performance
Architecture
Duration: 60 minutes
Interviewer: Engineering Manager
Career Discussion
System Design
Behavioral Assessment
Duration: 60 minutes
Note: Before this round, the recruiter informed that all rounds were cleared with positive feedback. Offer letter rollout was expected by Monday. However, on Monday, they scheduled one more round on design and coding.
Introduction and Project Discussion
React Coding Challenge
The overall experience after 4 rounds were okayish. But 5th round was not good as per feedback. I got "Do Not Proceed" feedback in 5th round due to which I got rejected. The 5th round interviewer gave a very bad feedback actually which I was very surprised because I gave a complex solution for a simple solution. This made me sad and I was frustrated because I was told that Hiring Manager liked me and they will roll out offer letter soon and then in 5th round which was not excellent I was rejected. I had to go through 5 rounds because it was for the main platform team there, I have heard other people had max 3 rounds.