Back to "Microsoft-intervjuer"

This is a viewer only at the moment see the article on how this works.

To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk

This is a preview from the server running through my markdig pipeline

Imported mostlylucidcouk Software Development Testing

Microsoft-intervjuer

Monday, 05 January 2004

Läs bara den här artikeln om en Microsoft-intervju.

Jag hade också en intervju för ett jobb på Microsoft för några år sedan (i Mitt fall, ett PM-jobb i en av servergrupperna).

Jag har träffat dig. Mark Anders Ordförande i bokhandeln på 1999 ASP professionell konferens i Islington, London (Jag kommer att missa Wrox-konferenserna!) och vi började prata om lite säkerhetsgrejer - han var ganska högt upp i ASP.NET gruppen på den tiden - det var helt embryonal då Han undersökte fortfarande vad folk tyckte om vissa saker. Jag blev inbjuden till Redmond.

Så jag flög över, fick tillbringa några dagar i Seattle, hade en trevlig rundtur i Microsoft Och så småningom blev han plågad för en dag.

Ett av mina största problem är att jag är MYCKET skotska - du kanske inte förstår vad detta betyder för direkt, röstkommunikation - men tänk om du vill, Billy Connolly på dubbel hastighet (även om jag har en Barry Whitesque baryton :-)) - mycket berusad och med En påse kulor i munnen - det är ganska nära.

Lägg till detta det faktum att jag var mycket nervös - hade just upptäckt Starbucks (6 stora espressos!) och var fortfarande jet-laggad bra, Jag skulle ha verkat prata några Märkligt förlorat språk.

Så, under en enda dag träffade jag 8 separata personer i flera olika byggnader - en få kodningsfrågor (enkla saker som att skriva en sökning och ersätta algoritmen ... den vanliga), vilket jag var ganska bra på. Det fanns några "uppfinnande" och kreativa frågor

  • En gång till ganska bra.

Sedan kom problem! Jag är vad som tekniskt kallas helt jävla skrämmande på matte, och särskilt matematik pussel när under stress - tillsammans med det faktum att jag har börjat tala Serbo-Koratian bådade inte bra.

Det fanns frågor om flödet av bilar över en bro; vid denna hastighet, hur många bilar passerar över på 2 minuter, en om balansering bollar (som jag fick svaret på genom lateralt tänkande, inte matematiken tillvägagångssätt).

Hur som helst, jag blev tillfrågad om jag skulle överväga ett jobb att testa - sa nej ... och i princip beslutat Att jag hade haft det med stora utvecklingsgrupper.

Detta verkligen färgade min syn på Microsoft - det hjälpte mig också att förstå lite av Hur det fungerar...

De letade efter Maths Geeks - åtminstone i det här fallet - Jag är inte en, jag är mer av den gamla skolan hackare (i rätt mening :-)) Jag gillar att tänka på koden Jag skriver och formar till en produkt folk vill använda - för mig är det inte en matematisk motion, massor av människor hatar detta tillvägagångssätt - och de flesta av de människor jag träffade på Microsoft Verkade inte förstå det.

Bristande kreativt tänkande är ett stort problem för säkerheten i webbaserade system och genom åren, testa, skriva och analysera dessa system, verkar det vara ett av de viktigaste orsakerna till att det uppstår problem i sådana system.

Utvecklare behöver tänka mer kreativt om sina applikationer, placera dig själv i samband med en person som försöker bryta / subvertera säkerheten för din kod, ställa gränser för punkter där alla användaringångar har validerats - applikationsbrandväggen

  • Det är din säkerhetszon.

Det är verkligen ganska lätt att göra detta, om du sätter gränser för vad din ansökan accepterar som indata.

  1. Validera hela tiden, klient och server.
  2. Kontrollera gränser i uttestningsutgåvan (vad händer om du skriver in för många tecken i ett formulärfält?).
  3. Fånga varje fel överallt du accepterar inmatning från utanför programmet - vare sig det från användaren eller från databasen (de kan gå ner!) .
  4. Ange förnuftiga felkoder för senare kod för att kontrollera - massor av program faller över helt enkelt för att de faller ur sekvens - med någon viktig metod som inte har återvänt rätt värde. Ställ in brytpunkter i kod där om ett villkor är satsat, en del avbryter sekvensen äger rum (rapportera felet till användaren, en omdirigering... etc.)
  5. Förenkla - detta är den viktigaste sak! Komplex kod döljer sina problem, hålla din kod läsbar, gör dina variabelnamn uppenbara, infoga kommentarer som indikerar förväntade sökvägar och förekomster i källan. Gör enklassfiler med samma namn Håll det enkelt.

Hur som helst, tillräckligt med svamlande....senare...

logo

© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.