Applied online. Did not hear back from them for a long long time even after multiple emails/calls and even a visit to the team in person.
After a month, was called on-site for a round of interviews. First round was with hiring manager which was basically a chat about background, software engineering processes etc. The second round was with a panel of three engineers and was based on Linux kernel internals, C programming, WiFi 802.11n and then some generic programming questions (they asked me to try these in Python)
I think the team of engineers were pretty smart and it might have been a fun experience to work with them. But my chemistry with the hiring manager was just off. His general demeanor of interacting with me was rude. There were enough red flags during our conversation which convinced me that I will have a difficult time working with him.