I had applied to Sr. Software Engineer position via their careers page. Although many times I received rejections but this time I received a mail to take Coding Assessment test.
1. Coding Assignment Round
They asked for the programming language of choice upfront. After 4 days, I received a mail link to Github Assignment bot. In the assignment, some tests would've been already written for the methods inside which you have to add your logic to pass those tests - that's the basic criteria. Once you start the assignment, you should finish it within 5 hours. Although they mention to preferably complete within 3 hrs but I'd suggest to take whole 5 hours but make sure to raise a PR within 3hrs. You can add changes on top of that. They intentionally don't specify any other criteria. Yet you should make sure your code
- Production grade i.e verbose logs, code comments, modular.
- Unit/Integration tests for any modules (if applicable)
I got the result almost a week after the submission. I got selected for the next rounds.
There were two rounds after this -- One Coding and another is System Design. They'd ask you if you want to fast track the application process by scheduling both the rounds on the same day with half hour difference. DO NOT opt for that. I made this mistake because your performance in the second round can get affected based on how the first round goes as there will be barely 10-15mins between two rounds.
Coding Round - Interviewer was friendly although was in hurry to finish everything in an hour. This was an easy-medium question, I could complete it. Then she moved to LLD question, which was easy too but I fumbled. However, the overall feedback was good.
Then moved to System Design round - Interviewer was a Sr Engineering Mgr. He was very friendly too. He asked a medium difficulty system design question. It could've been easily solved but I was still replaying the mistakes of first round. I provided a solution but it wasn't enough and the time ran out. I got rejected.
Anyway, in case I had selected there would've been two non-technical rounds -- one is diversity round and another one is on behavioural round containing situational based questions. If gone through this then would be the final Hiring Manger round on offer discussion.
On a side note, don't fall for the no-whiteboard interviews at Github. When I read other interview experiences on Glassdoor, they weren't doing whiteboards. Unfortunately it wasn't the case, at least in India. Also, experience with HR was not that great as mentioned in the other reviews. Communication was mostly email-centric, even the rejection was a templated email.
Anyway, overall I would say the interviews aren't difficult as compared to FAANG or Uber or so. You should be able to crack it on moderate effort. All the best!