Skills for engineer
-
Big-O perf
-
Training algorithms
-
Interesting list for coding http://dhruvbird.com/61.html
-
Tips interview: https://qr.ae/pN2HUa quora algorithms
- arrays
- how memory and array works
- common interview questions list of algorithms for array by categories Intersection in array
- linked list
-
introductions https://www.tutorialspoint.com/data_structures_algorithms/linked_list_algorithms.htm
https://www.geeksforgeeks.org/data-structures/linked-list/
- lists dynamic time complexity https://medium.com/@sherryhsu/js-objects-and-arrays-which-one-is-faster-cfcdb1281704#:~:text=On%20the%20other%20hand%2C%20Insert,time%20complexity%20of%20Amortized%20Constant.
- https://medium.com/@satorusasozaki/amortized-time-in-the-time-complexity-of-an-algorithm-6dd9a5d38045
- Difference array and linked list
- stack, queue
- hash
- binary search
- Trees
- Sorting
- Graphs
- KISS: https://thevaluable.dev/kiss-principle-explained/
- YAGNI
- SOLID
- DRY: https://thevaluable.dev/dry-principle-cost-benefit-example/
-
gang of four - 4 principal dessign patterns introduction
-
strategy
-
singleton
-
builder
-
adapter
-
prototype
-
decorator
-
visitor
-
abstract factory
-
factory
-
facade
-
observer
-
[ ]
-
proxy
-
delegate
-
command
-
state
-
memento
-
iterator
-
composite
-
flyweight
- types of test https://medium.com/swlh/levels-of-software-testing-b943ce41a2c7
- good practices https://dzone.com/articles/unit-testing-best-practices-how-to-get-the-most-ou
- practices
- Mock or real API calls: https://www.confluent.io/blog/choosing-between-mock-api-and-real-backend/
- About Stubs and Mocks for API testing: https://www.valentinog.com/blog/fake/
- why to debug
- how to debug
- practice in langage/ide
- components
- Database
- API
- serveurs
- how component interacts
- memory ram
- stock/data
- threads
- serveurs
- browser
- bash
- components https://medium.com/@wereheavyweight/how-were-using-component-based-design-5f9e3176bab
- how they interact
- difference internet and web
- linux install/unistall packages https://docs.cumulusnetworks.com/cumulus-linux-36/Installation-Management/Adding-and-Updating-Packages/
- how package manager works https://en.wikipedia.org/wiki/Package_manager
- file, copy, cat, remove, create https://documentation.its.umich.edu/node/295
- sot, grep, cat, awk, sed, sort
- basic scripts
- manager process
- ps, top, htop, isof
- change permissions and owner folders/files
- network
- ping, tcp dump https://www.howtogeek.com/108511/how-to-work-with-the-network-from-the-linux-terminal-11-commands-you-need-to-know/
- nmap
- traceroute
- definitions
- How to find
- Time Complexity of arrays/list
- amortized time https://yourbasic.org/algorithms/amortized-time-complexity-analysis/
-
database architectures: https://dzone.com/articles/database-architectures-amp-use-cases-explained?edition=620294&utm_source=Weekly%20Digest&utm_medium=email&utm_campaign=Weekly%20Digest%202020-08-05
-
OSI
-
HTTP
-
UDP
-
SSL
-
web server
- Ngnix
- Apache
-
FTP
-
TLS
-
DNS
-
NTP
-
SDN
-
database
- MySQL
- MariaDB
- PostGres
- Mongo
- loadbalancer
- firewall
- reverse proxy
- security
- coching server
- forward proxy
- HTML structure
- Links, buttons
- forms
- evolutions
- good practices
- definition
- value unit
- override points
- model box https://www.w3schools.com/css/css_boxmodel.asp
- position
- display
- float https://developer.mozilla.org/fr/docs/Web/CSS/float
- see also clear it's useful https://developer.mozilla.org/fr/docs/Web/CSS/clear
- overflow
- index
- selector
- debug in browser
- others skills
- DOM
- road map
- project to train - snake game -datatable forms
- selectors
- Parents, children
- Nodes
- change dom
- events
- AJAX
- InnerHTML
- Difference Inner et TextContent
- Object vs New Object
- strict mode
- Tricky parts
- Concatenation
- Compair number string
- Triple equals
- Convert String to Number
- Floats
- Callbacks
- Binding function
- apply and call
- Invoked function
- ES6
- Shadow DOM
- This word
- hosting
- scope
- prototype
- class
- strict
- asyncronous
- callbacks/promises
- event loop async
- setimeout 0
- schema tick a tick is an iteration
- nexttick vs settimeout, immediate
- process
- Testing
- [ ]
- Debug in JS
- use some debug and for vs code ide use extension
chrome debug
- use live server extension for vs code
- use some debug and for vs code ide use extension
- Card / Accordeon
- Pagination table
- Steper
- Tabs
- Loader before images
- Modals
- Sub/Override words when searching (dom search)
-
Learn a framework 'React'
-
react hooks basics mistakes: https://medium.com/better-programming/3-mistakes-junior-developers-make-with-react-function-component-state-8a744ab99a0d
-
hooks https://blog.logrocket.com/use-hooks-and-context-not-react-and-redux/
-
useEffect https://medium.com/swlh/useeffect-4-tips-every-developer-should-know-54b188b14d9c
-
tips
- Pouvez-vous la calculer en vous basant sur le reste de l’état ou les props de votre composant ? Si oui, ce n’est pas de l’état.
- penser react
- passer etat: Il ne doit y avoir qu’une seule « source de vérité » pour toute donnée qui change dans une application React. En général, l’état est d’abord ajouté au composant qui en a besoin pour s’afficher. Ensuite, si d’autres composants en ont également besoin, vous pouvez faire remonter l’état dans l’ancêtre commun le plus proche. Au lieu d’essayer de synchroniser les états de différents composants, vous devriez vous baser sur des données qui se propagent du haut vers le bas.
- scale https://medium.com/javascript-in-plain-english/setting-up-a-large-scale-react-application-2d50bc8a5ddb
- tutorial hooks
-
React Libraries
-
- Fragments
- Hooks
- Context
- Composition
- Refs
- Optimization
- Flow
-
Testing Unit/Integration/E2E
-
Babel
-
Assyncronous
-
Closures
-
Types
-
TypeScript
- Bootstrap
- Flexbox
- Bulma
- Pre processor
- light house
- performance
- debug in browser
- GO/Java/Python
- Testing
- Debug tools
- Deployment
- Packaging
- create API without frameworks
-
oauth
-
basic authentication
-
JWT
-
openId
-
SSO
-
Take a framework
-
Websockets
-
Dependendy Injection
-
Database
- ORM
-
security
- CORS
- XSS
- CSRF
-
Nodejs
- Serverless
- Microservices
- GraphQL
- Message broker
- Search engine
- APNs
- Location
- Payments
- Service workers
- Docker
- Containize
- Docker composer
- Manage commands
- Runners
- Jenkins
- Circle CI
- Configuration
- Ansible
- Puppet
- Concepts
- Process Management
- Cloud
- AWS
- Google Cloud
- Heroku
- Azure
- Digital Ocean
- Orchestration
- Kubernetes
- Docker Swarm
- Insfra provisioning
- Terraform
- Logs Splunk
- git
- commits
- merges
- history
- useful link
- http://schacon.github.io/git/user-manual.html
- http://www-cs-students.stanford.edu/~blynn/gitmagic/ch08.html
- write message: https://dev.to/chrissiemhrk/git-commit-message-5e21
- VS code/IDE
- linters
- webpack
- loggers
-
git
- reset, rollback
- conflicts
- gitflow
-
redux
-
gulp
- fonctionnal
- declarative
- procedural
- oop
- patterns
- MVC
- Test-driven
- CI
- Behavior-driven
- First introduction to clean code by Uncle Bob: https://www.youtube.com/watch?v=7EmboKQH8lM
- skills
- cryptography
- Singlepage SPA
- PWA
- Clean Architecture: A Craftsman's Guide to Software Structure and Design: A Craftsman's Guide to Software Structure and Design (Robert C.
- Growing Object-Oriented Software, Guided by Tests
- The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws
- Refactoring: Improving the Design of Existing Code
- Test Driven Development: By Example
- Design Patterns: Elements of Reusable Object-Oriented Software
- Implementing Domain-Driven Design
- Domain-Driven Design: Tackling Complexity in the Heart of Software
-
html icons unicode/hex + examples : https://www.htmlsymbols.xyz/
-
Accessibility web: https://webaim.org/intro/
-
Work routine: https://levelup.gitconnected.com/the-16-hour-developer-workout-6a9e10afa8c2