A Repeatable Guide to Full Stack Engineering
1. The Front-End (Angular, React, and others)
- understanding and inspecting pages
- realtime behaviour (e.g. chat)
- building a dev pipeline (webpack)
- visualizations (d3)
- reactivity and progressive enhacement (v. graceful degredation)
- RDF, web semantics
2. Devops, Systems & Protocols (AWS)
- Configuring a web server
- Systems protocols
3. Data structures & transmission/exchange, and consumption
- Data Interchange & API Layer (XML/Soap, JSON REST, Graphql)
4. Adding Reading & Writing (a Backend)
- Languages and Web Micro-Frameworks (pick 2 languages, learn a framework from each, then for your preferred language pick a 2nd framework for further insight)
-- python (flask, django), ruby (rails, sinatra), golang (revel, gin), java/scala/clojure (play, spring, spark, ninja)
- Databases (Postgres)
- ORMs & Schemas
5. Programming theory fundamentals, concepts and algorithms
- Protocols
- Complexity analysis
- Promises & Deferring
- Recursion and closures
- Channels and routines
6. Mobile
- ios + swift
- android
- mobile friendly web
6. Scaling to Multiple Consumers (Site Reliability)
- load balancing
- CDNs
- cacheing
- sharding
- minimizing / compress code
- Blue-green deployment
7. Security & Performance (Writing performant, optimized code)
- debugging
- profiling
- monkey patching
- pen testing
8. Scaling to Multiple Contributors
- git (scm)
- writing standards
- testing & continuous integration
- logging
- build automation and deployment
- build distributions (.deb)
8. Data Science & AI/ML
- Search
- Sentiment analysis
- Ranking and Recsys
- NLP and CV
- Convex Optimization
9. Data collection and cleaning
- write scrapers
- data pipelines and moving data
10. Decentralize & Distribute
- map reduce