Hooray!
You hit this page cause you want to be ready for high profile full-stack-mobile job interview or need to structure your interview questions.
Extremely convenient from DevOps perspective
- Effective Java by Joshua Bloch
- Mark L. Murphy The Busy Coder's Guide to Android Development
- http://www.vogella.com/tutorials/Android/article.html
- http://developer.android.com/index.html
- Kotlin https://kotlinlang.org/
You can find all news about Android
- Effective Objective-C 2.0 by Matt Galloway
- Erica Sadun OS Auto Layout Demystified
- Swift https://swift.org/
- Clean Codeby Robert Cecil Martin
- Eric Freeman, Kathy Sierra Head First Design Patterns
- Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides Design Patterns: Elements of Reusable Object-Oriented Software
- Eric Evans Domain-Driven Design
- Martin Fowler Patterns of Enterprise Application Architecture
Here's some areas where most Senior Developers lack of basics despite many years of experience:
- Networking (Protocols, API related HTTP Headers, Web-Socket)
- Bitwise Operators, http://www.tutorialspoint.com/go/go_bitwise_operators.htm
- Regexp
- Memory Allocation
- Algorithmic thinking (Logic, Big O notation()
- Linux (File IO, commands, performace, ...)
We are all spending most of our time around APIs built by someone else. Wouldn't be great to understand underline networking protocols HTTP/2, WebSockets, WebRTC, etc?
Ilya Grigorik, Google wrote a great book, High Performance Browser Networking: https://s3-ap-southeast-1.amazonaws.com/mylekha-ebook/IT+%26+Programming/Network/High-Performance-Browser-Networking-Ilya-Grigorik.pdf
Secure it! XSS, CSRF, CORS, JWT, etc http://jwt.io
- Algorithm Visualizer, http://jasonpark.me/AlgorithmVisualizer/#path=graph_search/dfs/tree
- Algorithms and Data Structures for Golang, https://github.com/0xAX/go-algorithms
- Algorithms and Data Structures in Python , https://www.youtube.com/playlist?list=PLsJ_X8XMWFjOfvMXk7HsZYr8vUwYVxTQM
- Algorithms (4th Edition) 4th Edition by Robert Sedgewick, https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X
Look at this! It was built by large community over the past 20 years and has a lot of great, well-optimized libraries. There is no need to reinvent everything in Golang.
Learn/refresh bash and basic shell commands first however
- Bash in Y minutes, https://learnxinyminutes.com/docs/bash/
- Shell commands explanation, http://explainshell.com/
- Linux Command Shell For Beginners http://vic.gedris.org/Manual-ShellIntro/1.2/ShellIntro.pdf
Easy! Learn how to visualize it
^({0,1}((0|+61)(2|4|3|7|8)){0,1}){0,1}(\ |-){0,1}[0-9]{2}(\ |-){0,1}[0-9]{2}(\ |-){0,1}[0-9]{1}(\ |-){0,1}[0-9]{3}$
- RegExper, https://regexper.com/ Ex: https://goo.gl/tqNCSv
- Regex101, https://regex101.com/
- An introduction to distributed systems, https://github.com/aphyr/distsys-class
- Most Golang related interview shadows "50 Shades of Go" article. Can you explain in plain English how Concurrency and Parallelism work in Go?` http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/
- Do you know how to write High Performance Go? http://go-talks.appspot.com/github.com/davecheney/presentations/writing-high-performance-go.slide#1
- How to Pass a Programming Interview (triplebyte.com) https://news.ycombinator.com/item?id=11246917
- Most HR expects you to score 200+ from 300 points. Practice, https://codility.com/programmers/lessons/
- Tips for tasks on Codility, http://dev.tasubo.com/2012/09/tips-for-tasks-on-codility.html
DON'T SKIP TRAINING! You are compiting again other candidates. Good news - most candidates are too lazy, overconfident and 90% of them won't bother to spend 4-6 hours to practice.
WHAT NEXT?
- If you are not native speaker, invest in American Accent https://www.youtube.com/watch?v=wIoD11Q8WQk&list=PLB132BCC7B2FD1FB9
Here's the list of great people you might want to follow
- Ivan Morgillo https://twitter.com/hamen
- Artem ZinnatulĪ»in https://twitter.com/artem_zin
- Hannes Dorfmann https://twitter.com/sockeqwe
- Jake Wharton https://twitter.com/JakeWharton
- Roman Nurik https://twitter.com/romannurik
- David Karnok https://twitter.com/akarnokd
- Dan Lew https://twitter.com/danlew42
Your feedback is greatly appreciated! Send me email on petrushinalex@gmail.com