chess.com sucht Softwareentwickler

Die Schachseite chess.com sucht einen Web-Developer. Das machen sie aus meiner Sicht ziemlich schlau. Denn sie haben einfach eine Mail an alle Mitglieder geschrieben. Um im Vorfeld schon mal zu klären, ob ein Bewerber zumindest einigermaßen in das Profil passt, gibt es 15 Fragen. Einige Fragen sind aus meiner Sicht ein wenig zu banal („sollte man heute noch Tabellen als Designmittel nutzen“), andere Fragen finde ich echt gut – da werde ich wohl klauen, ich meine mich inspirieren lassen.

Wer sich bei chess. com bewerben will, hier die Fragen:
1. Tell us about you. Who are you? Where are you from? What do you like to do?

2. What are 3 things you like, and 2 things you don’t like, about Chess.com?

3. Why do you want this job?

4. Do you do web design? If so, can you please include links to sites you have designed? If not, are you good with using an existing style to create new pages? Or do you always need a designer?

5. Should HTML tables be used in modern day web design? Why or why not?

6. Lets assume you’re dealing with thousands of lines of css code. You’ve got 5 major sections of your website where each section uses specific css classes. Should you use 5 separate css files, including only the css files you need on each section of the website? Or, one huge one that you include on every section? What’s advantage and disadvantages of the different approaches?

7. Does it matter if you put js code inline? in a library? in the of your html ? at the end? why?

8. What are the major differences (pros and cons) between memcache and apc? Provide examples of when you’d want to use a caching layer and when you wouldn’t.

9. Assume you have 3 database tables:
user.user_id (PK)
user.username
(the stats table represents a users rating and other stats) stats.user_id stats.rating
(the stats960 table represents a user’s Chess960 rating and other stats. Ches960 is a variant of chess. ) stats960.user_id stats960.rating

IMPORTANT: There is a stats record for every user record, but there is NOT a stats960 record for every user record.

Write a query which returns the top 10 rated users in either standard chess (stats table) or chess960 (stats960 table). No users should showup twice. Output should look something like this:
IamKing, 2615, standard
KnightTales, 2540, chess960
Legends, 2300, standard
WorldDomination, 2255, standard
ILuv960, 2250, chess960

10. Explain the steps in which you would troubleshoot a query that is taking 15 seconds to execute. Would you ever consider using „Force Index“ or „use key“? Why or why not?

11. Pretend a bug report just came in that the site is VERY slow. Explain the steps you would take to troubleshoot a slow website.

12. When writing code, how much do the following bother you on a scale from 1-10. Feel free to BRIEFLY explain your answer:
a) Wrong number of spaces or indents
b) Misaligned brackets
c) inconsistent use of uppercase variables and object names
d) unused variable

13. Talk about your favorite web framework (doesn’t have to be php based). Why do you love it? Why do you hate it?

14. What are the advantages of using an ORM? What are the disadvantages?

15. Code a SIMPLE User class using php. The class should demonstrate the following: a couple get and set methods to get and set basic fields such as first and last name. One static method, IsValidPassword, which takes one parameter, a string, and checks to see if the string is a valid password. Enforce things like minimum length and ensure the password contains letters, numbers. Anything else you want to enforce in their password to showoff your skills is fine too. Also demonstrate the use of __get and __set.

16. Take all of your answers above and then add your resume and send it all to: job01@chess.com

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

What is 5 + 9 ?
Please leave these two fields as-is:
IMPORTANT! To be able to proceed, you need to solve the following simple math (so we know that you are a human) :-)