My team allows candidates to use any editors during coding interviews. I noticed that during interviews, a lot of candidates are not using…
Posted on 2/28/2018
It's intimidating to jump into a large JavaScript codebase. In my opinion, the dynamic nature of JavaScript makes it harder to understand…
Posted on 2/19/2018
I have been working as a full-time software engineer for 7 months now. I think it's time for some reflections. For those who don't know, I…
Posted on 2/11/2018
Disclaimer, the content of this post is highly experimental. I recently learned about the nullable type in Kotlin. If an object might be…
Posted on 1/28/2018
I have to admit, I made a lot of bugs. I work in the UI Infrastructure team and one of my main responsibility is to refactor existing code…
Posted on 1/18/2018
Working in the UIPlatform team, I was in charge of refactoring the legacy front-end routing system. When I finished, everything behaved the…
Posted on 12/23/2017
EcmaScript 6 came with WeakMap. MDN defined WeakMap as "a collection of key/value pairs in which the keys are weakly referenced. The keys…
Posted on 12/7/2017
How do you create an array in JavaScript and fill it with a constant? The most naive way would be: But that seems too much work for such a…
Posted on 12/4/2017
I have done a couple technical interviews, both on-site and online. In my spare time, I also did some mock interviews for friends. I am a…
Posted on 11/20/2017
Jasmine provides some very convenient asymmetric matchers such as , and . Using them can make your test more robust. For example: Just…
Posted on 11/4/2017