So I just had a phone screen with Apple Media Products... and it was the weirdest interview by far !!! I am a Software Engineer at Amazon (L5) with 4 YOE. My expertise lies in distributed computing. I was interviewing for a team in Apple and my whole interview was in SQL !!! The interviewer asked me to design a SQL table, run queries on it. Asked me the relationship of the tables. Is this normal? Moreover, the interviewer kept telling me the answer I was giving was wrong... even though I’m fairly certain it was correct. The question that interviewer kept saying I was wrong in #tech was similar to this: Given a file and folder, with each file belonging to multiple folders and each folder belonging to multiple multiple files - what is the cardinality between them? Edit: I gave the answer Many to Many as many of you suggested but the interviewer said it wouldn’t work. :-) Edit 2: Did clarify if same file can indeed belong in multiple folders and interviewer said yes. Their words “I promise you that this system allows for one file to be present in multiple folders”
what was weird? interviewer shouldnt have asked you SQL ? just some shitty behavioral questions?
Why was the SQL question the only focus of the interview? I have done 100+ phone interviews in the past and conduct them myself... and this is the first time I was asked a question only on SQL Plot twist, I don’t even list SQL as my core compentencies in my resume
Not weird then. Clearly SQL was key skill for the job. “surprised” is the word that comes to my mind.Weird would be if interviewer asked about your favorite position
Was the answer “many to many”?
Should it be?
I was never told the right answer just that my answer would’nt “work”
Many to many? Broken down via an associative entity folder-file?
Apparently it wouldn’t “work”. That’s what I said
Many to many? Folder can have multiple files and the same file name can be in multiple folders.
Sounds like the interviewer was asking about Chen style ERDs, where the answer would have been m:n. I know nothing about distributed systems interviews, but it's an odd question in all but a heavy SQL context.
Interviewed at Google for a Technical Solutions Consultant role. Job description mentioned typical web dev stuff. Two interviews focused on only SQL. Not that I don't expect devs to know SQL but that was like all they asked about.
That's because most of our TSCs only know SQL. The TSC interviews are broken and won't be fixed anytime soon. It's unfortunate because the role is cool and the interviews don't reflect reality by any means.
If interviews are inefficient then the company is wasting money, no?
SQL and databases are new age Microsoft Excel in today’s IT world . Every technical person should have decent SQL and database knowledge.
Decent SQL knowledge is different from sole focus of interview. Do you get asked excel during an interview? I know SQL and did answer the question but I’m not a data analyst. I won’t know the best SQL queries
Why do you say "every technical person should have decent SQL knowledge"? I feel like I have a pretty decent grasp on distributed from a theoretical standpoint but I've rarely touched SQL. It always felt like something I could google if I had to 🤷♂️ am I wrong?
Was this for a position in New York?
I sometimes forget how far Amazon is on nosql compared to other companies due to our DynamoDB dogfooding. Any college hire we get probably will never use a SQL database as long as they work here unless they work in one of the few teams that for some reason still need it
Yeah, many companies dedicate at least 1 interview for SQL. Although many teams at Amazon use sql DBs ;)
Just because is nosql doesn’t mean you can’t fuck up. Indexing data is a big think to ensure queries are optimal. Also sharding knowledge if you are dealing with magnitudes of data.
Many to many .. with redundancy? Was the interviewer hinting on replication with file broken into partition or blocks? Versioning of files?
Well what answer did you give?
Let’s see what you think it is. I don’t to bias anything
Sorry I’m a designer