From 985bffae8e25f29ab93f2faa036bd783963ccbc2 Mon Sep 17 00:00:00 2001 From: John Washam Date: Mon, 6 Jun 2016 17:52:25 -0700 Subject: [PATCH] Reorganized a few things. Added "future Googler" files. --- future-googler-preview.png | Bin 0 -> 14374 bytes future-googler.pdf | 669 +++++++++++++++++++++++++++++++++++++ plan.txt | 173 ++++++---- 3 files changed, 769 insertions(+), 73 deletions(-) create mode 100644 future-googler-preview.png create mode 100644 future-googler.pdf diff --git a/future-googler-preview.png b/future-googler-preview.png new file mode 100644 index 0000000000000000000000000000000000000000..d587ccdbb4acb63787b63d1eb16da95854128a63 GIT binary patch literal 14374 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 literal 0 HcmV?d00001 diff --git a/future-googler.pdf b/future-googler.pdf new file mode 100644 index 0000000..99f0ba7 --- /dev/null +++ b/future-googler.pdf @@ -0,0 +1,669 @@ +%PDF-1.5 % +1 0 obj <> endobj 2 0 obj <>stream + + + + + application/pdf + + + Future Googler + + + 2016-06-06T11:14:29-07:00 + 2016-06-06T11:14:29-07:00 + 2016-06-06T11:14:29-07:00 + Adobe Illustrator CC 2015 (Macintosh) + + + + 256 + 156 + JPEG + /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAnAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FVssscMTyy sEjjUu7noFUVJOKCaFl87edPzH1zzFfyQ2s0ltpQbjbWkRKlxWgaTjuzN4dB+OYspkvBa/tbLnmR AkQ6Adff+pBW/kHzyjW88el3UPqOojlCkMhYgBmC/Gg33JGDhPc0w7L1QqQjIefd+kPpO0t/q1rD b82k9GNY/UclnbiAOTE7kmm+ZQD6FCPCAO5VwsnYq7FXYqsmmjhheaU8Y41Lu25oqipO2JKCaFsc 078yvJWpX0NjZaj6t1cNwhj9GdeTeFWjCj6TkBkDr8Pa2nySEIyuR8j+pk2Tdi7FXYq7FXYq7FXY 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 + + + + uuid:ec7847ef-0657-c74f-8754-72daac11107d + xmp.did:1072163a-a6a5-40da-835f-9139dc824a65 + uuid:5D20892493BFDB11914A8590D31508C8 + proof:pdf + + uuid:24934e1f-6fc9-ed44-93c1-24c693ab60d5 + xmp.did:d7c14dfe-eafd-4816-a359-f7ff292944c8 + uuid:5D20892493BFDB11914A8590D31508C8 + proof:pdf + + + + + saved + xmp.iid:d7c14dfe-eafd-4816-a359-f7ff292944c8 + 2016-06-06T11:01:40-07:00 + Adobe Illustrator CC 2015 (Macintosh) + / + + + saved + xmp.iid:1072163a-a6a5-40da-835f-9139dc824a65 + 2016-06-06T11:14:23-07:00 + Adobe Illustrator CC 2015 (Macintosh) + / + + + + Print + False + False + 1 + + 66.000000 + 51.000000 + Picas + + + + Cyan + Magenta + Yellow + Black + + + + + + Default Swatch Group + 0 + + + + White + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 0.000000 + + + Black + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 100.000000 + + + CMYK Red + CMYK + PROCESS + 0.000000 + 100.000000 + 100.000000 + 0.000000 + + + CMYK Yellow + CMYK + PROCESS + 0.000000 + 0.000000 + 100.000000 + 0.000000 + + + CMYK Green + CMYK + PROCESS + 100.000000 + 0.000000 + 100.000000 + 0.000000 + + + CMYK Cyan + CMYK + PROCESS + 100.000000 + 0.000000 + 0.000000 + 0.000000 + + + CMYK Blue + CMYK + PROCESS + 100.000000 + 100.000000 + 0.000000 + 0.000000 + + + CMYK Magenta + CMYK + PROCESS + 0.000000 + 100.000000 + 0.000000 + 0.000000 + + + C=15 M=100 Y=90 K=10 + CMYK + PROCESS + 15.000000 + 100.000000 + 90.000000 + 10.000000 + + + C=0 M=90 Y=85 K=0 + CMYK + PROCESS + 0.000000 + 90.000000 + 85.000000 + 0.000000 + + + C=0 M=80 Y=95 K=0 + CMYK + PROCESS + 0.000000 + 80.000000 + 95.000000 + 0.000000 + + + C=0 M=50 Y=100 K=0 + CMYK + PROCESS + 0.000000 + 50.000000 + 100.000000 + 0.000000 + + + C=0 M=35 Y=85 K=0 + CMYK + PROCESS + 0.000000 + 35.000000 + 85.000000 + 0.000000 + + + C=5 M=0 Y=90 K=0 + CMYK + PROCESS + 5.000000 + 0.000000 + 90.000000 + 0.000000 + + + C=20 M=0 Y=100 K=0 + CMYK + PROCESS + 20.000000 + 0.000000 + 100.000000 + 0.000000 + + + C=50 M=0 Y=100 K=0 + CMYK + PROCESS + 50.000000 + 0.000000 + 100.000000 + 0.000000 + + + C=75 M=0 Y=100 K=0 + CMYK + PROCESS + 75.000000 + 0.000000 + 100.000000 + 0.000000 + + + C=85 M=10 Y=100 K=10 + CMYK + PROCESS + 85.000000 + 10.000000 + 100.000000 + 10.000000 + + + C=90 M=30 Y=95 K=30 + CMYK + PROCESS + 90.000000 + 30.000000 + 95.000000 + 30.000000 + + + C=75 M=0 Y=75 K=0 + CMYK + PROCESS + 75.000000 + 0.000000 + 75.000000 + 0.000000 + + + C=80 M=10 Y=45 K=0 + CMYK + PROCESS + 80.000000 + 10.000000 + 45.000000 + 0.000000 + + + C=70 M=15 Y=0 K=0 + CMYK + PROCESS + 70.000000 + 15.000000 + 0.000000 + 0.000000 + + + C=85 M=50 Y=0 K=0 + CMYK + PROCESS + 85.000000 + 50.000000 + 0.000000 + 0.000000 + + + C=100 M=95 Y=5 K=0 + CMYK + PROCESS + 100.000000 + 95.000000 + 5.000000 + 0.000000 + + + C=100 M=100 Y=25 K=25 + CMYK + PROCESS + 100.000000 + 100.000000 + 25.000000 + 25.000000 + + + C=75 M=100 Y=0 K=0 + CMYK + PROCESS + 75.000000 + 100.000000 + 0.000000 + 0.000000 + + + C=50 M=100 Y=0 K=0 + CMYK + PROCESS + 50.000000 + 100.000000 + 0.000000 + 0.000000 + + + C=35 M=100 Y=35 K=10 + CMYK + PROCESS + 35.000000 + 100.000000 + 35.000000 + 10.000000 + + + C=10 M=100 Y=50 K=0 + CMYK + PROCESS + 10.000000 + 100.000000 + 50.000000 + 0.000000 + + + C=0 M=95 Y=20 K=0 + CMYK + PROCESS + 0.000000 + 95.000000 + 20.000000 + 0.000000 + + + C=25 M=25 Y=40 K=0 + CMYK + PROCESS + 25.000000 + 25.000000 + 40.000000 + 0.000000 + + + C=40 M=45 Y=50 K=5 + CMYK + PROCESS + 40.000000 + 45.000000 + 50.000000 + 5.000000 + + + C=50 M=50 Y=60 K=25 + CMYK + PROCESS + 50.000000 + 50.000000 + 60.000000 + 25.000000 + + + C=55 M=60 Y=65 K=40 + CMYK + PROCESS + 55.000000 + 60.000000 + 65.000000 + 40.000000 + + + C=25 M=40 Y=65 K=0 + CMYK + PROCESS + 25.000000 + 40.000000 + 65.000000 + 0.000000 + + + C=30 M=50 Y=75 K=10 + CMYK + PROCESS + 30.000000 + 50.000000 + 75.000000 + 10.000000 + + + C=35 M=60 Y=80 K=25 + CMYK + PROCESS + 35.000000 + 60.000000 + 80.000000 + 25.000000 + + + C=40 M=65 Y=90 K=35 + CMYK + PROCESS + 40.000000 + 65.000000 + 90.000000 + 35.000000 + + + C=40 M=70 Y=100 K=50 + CMYK + PROCESS + 40.000000 + 70.000000 + 100.000000 + 50.000000 + + + C=50 M=70 Y=80 K=70 + CMYK + PROCESS + 50.000000 + 70.000000 + 80.000000 + 70.000000 + + + + + + Grays + 1 + + + + C=0 M=0 Y=0 K=100 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 100.000000 + + + C=0 M=0 Y=0 K=90 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 89.999400 + + + C=0 M=0 Y=0 K=80 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 79.998800 + + + C=0 M=0 Y=0 K=70 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 69.999700 + + + C=0 M=0 Y=0 K=60 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 59.999100 + + + C=0 M=0 Y=0 K=50 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 50.000000 + + + C=0 M=0 Y=0 K=40 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 39.999400 + + + C=0 M=0 Y=0 K=30 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 29.998800 + + + C=0 M=0 Y=0 K=20 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 19.999700 + + + C=0 M=0 Y=0 K=10 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 9.999100 + + + C=0 M=0 Y=0 K=5 + CMYK + PROCESS + 0.000000 + 0.000000 + 0.000000 + 4.998800 + + + + + + Brights + 1 + + + + C=0 M=100 Y=100 K=0 + CMYK + PROCESS + 0.000000 + 100.000000 + 100.000000 + 0.000000 + + + C=0 M=75 Y=100 K=0 + CMYK + PROCESS + 0.000000 + 75.000000 + 100.000000 + 0.000000 + + + C=0 M=10 Y=95 K=0 + CMYK + PROCESS + 0.000000 + 10.000000 + 95.000000 + 0.000000 + + + C=85 M=10 Y=100 K=0 + CMYK + PROCESS + 85.000000 + 10.000000 + 100.000000 + 0.000000 + + + C=100 M=90 Y=0 K=0 + CMYK + PROCESS + 100.000000 + 90.000000 + 0.000000 + 0.000000 + + + C=60 M=90 Y=0 K=0 + CMYK + PROCESS + 60.000000 + 90.000000 + 0.003100 + 0.003100 + + + + + + + Adobe PDF library 15.00 + + + + + + + + + + + + + + + + + + + + + + + + + endstream endobj 3 0 obj <> endobj 5 0 obj <>/Properties<>>>/TrimBox[0.0 0.0 792.0 612.0]/Type/Page>> endobj 6 0 obj <>stream +Hˎ$IE-kj@V={DfUH#$QIaǵkf~}~w<~|ģ|S?}y#CLю~xퟏtDґYePcmãMb\Z=ar|~9L-G Oʦ&Uj??N V%-9|^R0ZC,%j/ uڱ h>ʵdR-R*"ܷ߻~{西l"'eBd,)=& G0GǗ[%BnuHD}n)4־!rPVlz,G k +k­M8Le%sPD׌Z柢;;LK{⣫9V[4;/_/<6GoY-ZYpZWT,kC]4%=_5{Aq+i_t͊%v+V4>1M H/23- - +~7ڠazjY_aD`si멳z!Ox1 +TkW/_[ cGyZQb"CE]PEiQt +"B--)(y*ұ+o;.b3lA:_x9APHi թ˷lWH0-#ѱQ|; #ϟpHNq?)_M!Q~ɱM񅰟vGrOGl $ss&2IN{@f v׎ @yVY-K4DJ ۨ+D +M8< JUU쪚ۥP P7LLZAn"y iI5k!#*@l3Z 2ڔC*_M퀌任a4&F8!K,Eqc\R?$9v%Fѐ^8&]I³tJqrvr8UJpD`ѡC)9cO;|R ʐ \JvU F;:QV5kQfy:cXLѩY)Mψ[j>ZDѲyѱTf#oS0qլl\xWK^d:>S(E:G1ζmkU(|u%챪L O&Z'8L6v/ Yhas7" ֜A)n'ొ>%( S %FtóuPŲ DA 9YbbH pEY ޱ/QH-,y_!0B\/爾FxߩFzʿi9#lKoZ1rԥ&mĖTa'e kd9dOHD{ Ic@lyi>{oSr (E(Fe+ iFTኸ"~O{f3u9][zڥRkIbX3G +'Hwno{4zSM|givIqyD/>{G~5$չ_)>Eo$ 7o >]KtmdD-B|yT7Y\jz\/%oˢ:坏dSy=ek:mNɜX۲ }}NJPLĥ`6UhGԎ 쇇nwÐe]l,M5TœL D 1mT%mJ̦iuE[X-+^O{|p @Z5E&q֘P[ n1"Ko KËLNɈ9ln Ѫ<c̗a7EjĤ{ y5*'GsoXa;_/@M8;; ;TK> +Hkd6 24|[[j`8nxU8PL6uu iZXgK,bzF\k;.U8ȮRar9wni'РenfeO"y[ΚlHa<h)$SzsȹM/FK5"8 igT)+w-M> endobj 7 0 obj <> endobj 9 0 obj <> endobj xref 0 10 0000000000 65535 f +0000000016 00000 n +0000000076 00000 n +0000055729 00000 n +0000000000 00000 f +0000055780 00000 n +0000056030 00000 n +0000059257 00000 n +0000059131 00000 n +0000059369 00000 n +trailer <<38C68F7129E04A38946532D6AB8ACB85>]>> startxref 59565 %%EOF \ No newline at end of file diff --git a/plan.txt b/plan.txt index 7a1ddb6..216ce6c 100644 --- a/plan.txt +++ b/plan.txt @@ -1,9 +1,48 @@ +########################################################################################## +## How to read this +########################################################################################## + +Everything below is an outline, and you should tackle the items in order from top to bottom. + +I put an asterisk * at the beginning of a line when I'm done with it. When all sub-items are done, +I put a * at the top level, meaning the entire block is done. Sorry you have to remove all my * +to use this the same way. If you search/replace, there are a couple of places to look out for. + +########################################################################################## +## Interview Prep: +########################################################################################## + +* - Videos: + * - https://www.youtube.com/watch?v=oWbUtlUhwa8&feature=youtu.be + * - https://www.youtube.com/watch?v=qc1owf2-220&feature=youtu.be + +Articles: + - http://dondodge.typepad.com/the_next_big_thing/2010/09/how-to-get-a-job-at-google-interview-questions-hiring-process.html + - http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html + - http://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions + - http://www.google.com/about/careers/lifeatgoogle/hiringprocess/ + +Additional (not suggested by Google but I added): + - https://courses.csail.mit.edu/iap/interview/materials.php + - http://www.coderust.com/blog/2014/04/10/effective-whiteboarding-during-programming-interviews/ + - https://www.youtube.com/watch?v=rEJzOhC5ZtQ&feature=youtu.be + - https://www.youtube.com/watch?v=aClxtDcdpsQ&feature=youtu.be + - https://www.youtube.com/watch?v=2cf9xo1S134&feature=youtu.be + - https://www.youtube.com/watch?v=YJZCUhxNCv8 + * - https://medium.com/always-be-coding/abc-always-be-coding-d5f8051afce2#.4heg8zvm4 + * - https://medium.com/always-be-coding/four-steps-to-google-without-a-degree-8f381aa6bd5e#.asalo1vfx + * - https://medium.com/@dpup/whiteboarding-4df873dbba2e#.hf6jn45g1 + ########################################################################################## ## Knowledge: ########################################################################################## -I put a * at the beginning of a line when I'm done with it. When all sub-items are done, I put a * the top level, -meaning the entire block is done. +You need to know C, C++, or Java to do the coding part of the interview. +They will sometimes make an exception and let you use Python or some other language, but the language +must be mainstream and allow you write your code low-level enough to solve the problems. +You'll see some C, C++ learning included below. + +There are a few books involved, see the bottom * - how computers process a program: * - https://www.youtube.com/watch?v=42KTvGYQYnA @@ -40,7 +79,7 @@ meaning the entire block is done. - Google uses clang-format (Google setting) - C++ Core Guidelines: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines * - Efficiency with Algorithms, Performance with Data Structures: https://youtu.be/fHNmRkzxHWs - - review: https://www.youtube.com/watch?v=Rub-JsjMhWY + - review of C++ concepts: https://www.youtube.com/watch?v=Rub-JsjMhWY * - compilers: * - https://class.coursera.org/compilers-004/lecture/1 @@ -53,11 +92,11 @@ meaning the entire block is done. The Gauntlet: Each day I take one subject from the list below, watch videos about that subject, and write an implementation in: - C + C - using structs and functions that take a struct * and something else as args. C++ - without using built-in types C++ - using built-in types, like STL's std::list for a linked list Python - without using built-in types - and write tests to ensure I'm doing it right + and write tests to ensure I'm doing it right, keep it simple with just assert() statements Each subject does not require a whole day to be able to understand it fully. Why code in all of these? Practice, practice, practice, until I'm sick of it, and can do it with no problem (some have many edge cases and bookkeeping details to remember) @@ -67,19 +106,24 @@ Why code in all of these? ---------------------------------------------------------------- arrays - - No need to spend a day on this. + No need to spend a whole day on this. + * - Description: + - https://www.coursera.org/learn/data-structures/lecture/OsBSF/arrays + - https://www.coursera.org/learn/data-structures/lecture/EwbnV/dynamic-arrays - Implement: - - raw data array with allocated memory + - Practice coding using arrays and pointers, and pointer math to jump to an index instead of using indexing. + * - new raw data array with allocated memory (can allocate int array under the hood, just not use its features) + * - size() - number of items + * - capacity() - number of items it can hold + * - is_empty() - at(index) - returns item at given index + - cannot append or move if full - will not tackle allocating and copying to new memory - append(item) - insert(index, item) - prepend(item) - can use insert above at index 0 - delete(index) - remove(item) - find(item) - - Nothing to implement, but practice coding using arrays and pointers, and pointer math to jump to an index instead of using indexing. - - https://www.coursera.org/learn/data-structures/lecture/OsBSF/arrays - - https://www.coursera.org/learn/data-structures/lecture/EwbnV/dynamic-arrays - Time - O(1) to add/remove at end (amortized for allocations for more space), index, or update - O(n) to insert/remove elsewhere @@ -254,6 +298,10 @@ System design: Performance analysis and optimization Testing +------------------------------------------------------------------- + +Extras that can't hurt: + Information theory: - Markov processes: - https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/waxgx/core-markov-text-generation @@ -279,26 +327,11 @@ Machine Learning: --- -When you have time: - -C++ Talks at CPPCon: - - https://www.youtube.com/watch?v=hEx5DNLWGgA&index=2&list=PLHTh1InhhwT75gykhs7pqcR_uSiG601oh - -Compilers: - - https://class.coursera.org/compilers-004/lecture - -Computer and processor architecture: - - https://class.coursera.org/comparch-003/lecture - -Long series of C++ videos: - - https://www.youtube.com/playlist?list=PLfVsf4Bjg79Cu5MYkyJ-u4SyQmMhFeC1C - ---- +Be thinking of: Biggest challenges faced Best/worst designs seen Ideas for improving existing products - - my search idea (optimal result exhaustion and refresh) ########################################################################################## ## Videos: @@ -362,65 +395,42 @@ Continuous Pipelines at Google AddressSanitizer: A Fast Address Sanity Checker - http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/37752.pdf - -########################################################################################## -## Interview Prep: -########################################################################################## - -Videos: - - https://www.youtube.com/watch?v=oWbUtlUhwa8&feature=youtu.be - - https://www.youtube.com/watch?v=qc1owf2-220&feature=youtu.be - -Articles: - - http://dondodge.typepad.com/the_next_big_thing/2010/09/how-to-get-a-job-at-google-interview-questions-hiring-process.html - - http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html - - http://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions - - http://www.google.com/about/careers/lifeatgoogle/hiringprocess/ - -Additional: - - https://courses.csail.mit.edu/iap/interview/materials.php - - http://www.coderust.com/blog/2014/04/10/effective-whiteboarding-during-programming-interviews/ - - https://www.youtube.com/watch?v=rEJzOhC5ZtQ&feature=youtu.be - - https://www.youtube.com/watch?v=aClxtDcdpsQ&feature=youtu.be - - https://www.youtube.com/watch?v=2cf9xo1S134&feature=youtu.be - ########################################################################################## ## Books: ########################################################################################## -%%%%% Mentioned in Coaching %%%%%%%%%%%%%%% +Mentioned in Coaching: -The Algorithm Design Manual - http://sist.sysu.edu.cn/~isslxm/DSA/textbook/Skiena.-.TheAlgorithmDesignManual.pdf + The Algorithm Design Manual + http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202 -Algorithms and Programming: Problems and Solutions: - http://www.amazon.com/Algorithms-Programming-Solutions-Alexander-Shen/dp/0817638474 + Algorithms and Programming: Problems and Solutions: + http://www.amazon.com/Algorithms-Programming-Solutions-Alexander-Shen/dp/0817638474 -Read first: -Programming Interviews Exposed: Secrets to Landing Your Next Job, 2nd Edition: - http://www.wiley.com/WileyCDA/WileyTitle/productCd-047012167X.html + Read first: + Programming Interviews Exposed: Secrets to Landing Your Next Job, 2nd Edition: + http://www.wiley.com/WileyCDA/WileyTitle/productCd-047012167X.html -Read second: -Cracking the Coding Interview, Fourth Edition: - http://www.amazon.com/Cracking-Coding-Interview-Fourth-Edition/dp/145157827X + Read second: + Cracking the Coding Interview, Fourth Edition: + - http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/ -%%%%% Additional %%%%%%%%%%%%%%% +Additional (not suggested by Google but I added): -Programming Pearls: - - http://www.wou.edu/~jcm/Spring-P-2015/Programming%20Pearls%20(2nd%20Ed)%20Bentley.pdf + * - C Programming Language, Vol 2 -The Google Resume: - - https://www.uop.edu.jo/download/research/members/495_1887_llll.pdf + * - C++ Primer Plus, 6th Edition -* - C Programming Language, Vol 2 + Programming Pearls: + - http://www.amazon.com/Programming-Pearls-2nd-Jon-Bentley/dp/0201657880 -* - C++ Primer Plus + If you see people reference "The Google Resume", it was replaced by "Cracking the Coding Interview". -Clean Code + Clean Code -Code Complete + Code Complete -Introduction to Algorithms + Introduction to Algorithms ########################################################################################## ## Coding exercises/challenges: @@ -430,16 +440,33 @@ Recommended: LeetCode: https://leetcode.com/ HackerRank: https://www.hackerrank.com/ Codility: https://codility.com/programmers/ -Proect Euler: https://projecteuler.net/index.php?section=problems +Project Euler: https://projecteuler.net/index.php?section=problems InterviewCake: https://www.interviewcake.com/ InterviewBit: https://www.interviewbit.com/invite/icjf ########################################################################################## -## Code: +## Code References: ########################################################################################## -https://github.com/lekkas/c-algorithms +For review questions in C book: + https://github.com/lekkas/c-algorithms + +########################################################################################## +## Once you've got the job (this is mainly for me): +########################################################################################## + +C++ Talks at CPPCon: + - https://www.youtube.com/watch?v=hEx5DNLWGgA&index=2&list=PLHTh1InhhwT75gykhs7pqcR_uSiG601oh + +Compilers: + - https://class.coursera.org/compilers-004/lecture + +Computer and processor architecture: + - https://class.coursera.org/comparch-003/lecture + +Long series of C++ videos: + - https://www.youtube.com/playlist?list=PLfVsf4Bjg79Cu5MYkyJ-u4SyQmMhFeC1C ########################################################################################## ## Done. ## -########################################################################################## \ No newline at end of file +##########################################################################################