The development environment is the engineers' heaven. The code is well-architected and thoroughly tested, and you can run everything offline. TDD and CI/CD make you super productive. You can basically write the tests, implement your code, run tests locally to make sure it behaves as expected, submit your PR, get it approved, and let the systems do the rest. If everything goes well, your code will be in production in 30 minutes.
Most of the engineers are from top schools. If you are a new graduate, you will learn a lot in the first few years.
The production environment is so outdated. Most of the services, except data infrastructure (which is the only cloud-native one), run on dedicated servers, so you can't use anything AWS or GCP.
On-call is a nightmare. On average, you get paged once or twice a day, no matter if it is office hours, midnights, or weekends. You are expected to fix it immediately since these issues are either user-facing or money-related.
If you are an experienced engineer, you join as E4. This is basically the top of the ladder, since E5 or above is only for old-timers or insiders. The leadership team created some guidelines and rules, for example, promotion criteria and expected tenure in each level. However, you also keep seeing exceptions. When these exceptions don't happen to you, you know you are not among the insiders.
Be honest and transparent about unreal valuation and unpractical trajectory in the past few years.
Respect the employees that can't or don't want to wait and reimburse their losses, and reward the ones that are still willing to stay with you.
Issue RSUs instead of options, otherwise you take advantage of the employees. Most of them can't afford to exercise even just the vested options.
Embrace new technologies and modernize the production environment. Don't hire industrial veterans if you don't listen to them. Give employees a career path to grow, even for the senior ones.
45-minute intro call with the hiring manager and a 45-minute phone screen on CoderPad. The interview question was easy. I thought I did well, but my guess is they are looking for developers who can code using Java 8 functional features. I did it usin
I applied online and heard back from the recruiter a few weeks later. It was a pretty standard process of talking to the hiring manager, a technical phone screen, an onsite interview, and negotiation. The questions were pretty standard fare for an e
I was initially contacted by a recruiter. I set up an informal chat with the recruiter, and then a phone screen was scheduled. The phone screen was done on CoderPad, and the interviewer was cheerful and helpful. After a few weeks, an onsite intervi
45-minute intro call with the hiring manager and a 45-minute phone screen on CoderPad. The interview question was easy. I thought I did well, but my guess is they are looking for developers who can code using Java 8 functional features. I did it usin
I applied online and heard back from the recruiter a few weeks later. It was a pretty standard process of talking to the hiring manager, a technical phone screen, an onsite interview, and negotiation. The questions were pretty standard fare for an e
I was initially contacted by a recruiter. I set up an informal chat with the recruiter, and then a phone screen was scheduled. The phone screen was done on CoderPad, and the interviewer was cheerful and helpful. After a few weeks, an onsite intervi