Skip to main content

prepare for the interviews



Here are some hints and tips to help you prepare for the interviews:

Tl;dr: We like to let candidates show off their skills in the environment they are best on. As such, you’ll need to bring a laptop and you should plan to write lots of code on it that runs during your interviews.

Interview Questions:
Interview topics may cover anything on your CV (especially if you have stated that you are an expert!), coding questions on your laptop, building and developing complex algorithms and analyzing their performance characteristics, systems design and core computer science principles - hash tables, stacks, arrays, etc. Computer Science fundamentals are prerequisite for all engineering roles at Snap, regardless of seniority, due to the complexities and global scale of the projects you would end up participating in.

How to succeed:
At Snap, we believe in collaboration and sharing ideas. Most importantly, you'll need more information from the interviewer to analyze & answer the question to its full extent.

* Bring a laptop that you are comfortable writing code on
* Interviewers strongly prefer working test cases over psuedo-code
* It’s OK to question your interviewer.
* When asked to provide a solution, first define and frame the problem as you see it.
* If you don't understand - ask for help or clarification.
* If you need to assume something - verbally check it’s a correct assumption!
* Describe how you want to tackle solving each part of the question.
* Always let your interviewer know what you are thinking as he/she will be as interested in your process of thought as your solution.
Also, if you're stuck, they may provide hints if they know what you're doing.
* Finally, listen - don't miss a hint if your interviewer is trying to assist you!

Interviewers will be looking at the approach to questions as much as the answer:
* Does the candidate listen carefully and comprehend the question?
* Are the correct questions asked before proceeding? (important!)
* Is brute force used to solve a problem? (This is a fine starting point but refine your solution from there!)
* Are things assumed without first checking? (not good!)
* Are hints heard and heeded?
* Is the candidate slow to comprehend / solve problems? (not good!)
* Are new ideas and methods of tackling a problem sought?
* Is the candidate inventive and flexible in their solutions and open to new ideas?
* Can questioning move up to more complex problem solving?

Snap is keen to see really high quality, efficient, clear code that runs real test cases at the end of your interview.

To practice for your interview you may want to visit the website www.topcoder.com If you launch the "Arena" widget and then go to the practice rooms where you can play with the problems in the first/second division as a warm up. This is particularly important for candidate with less than four years of experience. Another site recommended highly by engineers is projecteuler.net.  These sites will expose you to programming problems that you would not normally come across in a standard day. 

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...