But then when we asked him to write some code during the 5 person panel interview , the guy couldnt code worth shit. It was completely one big ass set of function calls with no oo design. Wtf happened to the quality of q hires? This guy couldn't possibly have passed a q interview when I was still there a few years ago.
15 replies (most recent on top)
Q isn't a software company, it's a hardware company. How many times do I have to say it.
Ok if you need someone to implement algorithms with Z-plane analysis etc. you are right an EE is a better choice then some CS dude who never read a DSP book. When I worked at Broadcom on chips that was rarely needed in a FW engineer, it was mostly protocol work which needs a good well known layered architecture which surprisingly the EEs had no clue about. They couldn't even design a good I/O bridge pattern so that no matter the transport the software using it wouldn't have to change. I am just speaking from experience and once again a good EE who spends weekends studying Design Patterns etc. would probably do just as a good a job in this case as a CS dude.
No blocking implementation? Use callbacks?
@GetReal, that is probably right. But somebody has to do real math that CS people can't. So it's a good balance of skills.
At the risk of starting a flame war he was probably an EE major. They aren't taught software design principles yet are commonly put into firmware positions. Unless they do a lot of studying on the side about modern software engineering all they know is logic and create poorly decomposed designs. Just sayin'
I might have nailed your interview by suggesting a bridge pattern for the transport abstraction and a momento pattern for your message abstractions. Your controllable objects could probably use a base class, let's call it controllable, to contain common attributes and operations.
And no, we don't ask those stupid brain teaser questions that some companies love to ask. Nor do we waste our time asking questions like "implement a Linked List or a Hashtable". Hello, this is the 21century. If you need a linked list or a hashtable, you open up your trusting browser and google for one of the several hundred implementations that exist on the platform of your flavor... If you're going to be a bitflipper, at least try to be a higher level bit flipper..damnit...
...For the record, the dude WAS NOT on H1-B. At least, not the way he looked......
Anonymous127212, I'm curious how many "software engineers" From the Q (regardless of title (Senior/Staff/Senior Staff) are real "software engineers" with real good design principles and skills. Hopefully, this one person was just an anomaly. But I'm beginning to think it's more common than I think. Maybe the Q got so big and fat, that each person doing the work doesn't really "design" much anymore, but just implements some small code in a small part of the system within some boxed frameowork/procedure, without really needing to consider much about good software design. If that's really the case, these folks aren't "software engineers". They are "programmers", and could be easily replaced by outsourced labor (with equally shitty concern for software quality and design principles).
Well I'd be stumped. But then again, I don't advertise OO skills. And my interview questions would be about things like Kalman filter.
It was an open end question. Imagine you are designing a homeautomation application to control IOT home automation devices. You have different types of devices, such as a lightbulb, a switch, a fire detector, a thermostat. Some of devices share similar attributes and states (for example a lightbulb or a thermostat might have both an on or off state. )But they could also have device specific capabilities. In addition, each device could support a transport type over WiFi or Bluetooth or LTE to receive requests from the apps and to send responses/notifications to. It doesn't matter CDwhich transport type it supports. The design shouldnt care about what type of transport is being used. How would you model these IOT home automation devices with OO, and how would you design the transport mechanism, and specially can you explain how you would design the send function and get state function for a device, specifically around any sort of transport latency.( i.e. these shouldnt be a blocking implementation)
Must've been an H1B Desi non thinker from IIT. The truth about "the best and brightest" and the malpractices within QC are coming out on this board slowly but surely.
care to share the coding problem? You must have plenty more where that came from.
What title level is he at at Q? Which team?
How about the many lawyers,MBAs they hired recently
Usually, in our 5panel person interview, there is at least one person on the panel that would have something good to say about the candidate. But this guy, everyone unanimously said wtf...