Looking at creating a personal development plan, what else should "I know" or be aware of as a mid/senior full stack (Mainly . NET) Software Engineer?
UI Development
- HTML
- CSS
- JavaScript
- Accessibility
- Responsive/Adaptive Web Design
- Search Engine Optimization (SEO)
- Web Performance Optimization (WPO)
Database Development
- RDBMS Relational Database
- Queries (Insert, update, delete, joins, sub)
- Stored Procedures
- Triggers
- User-defined Objects
- Table changes
- No SQL
- Key-Value Stores
- Wide Column Stores
- Document Stores
- Graph Databases
- Centralized Database
- Distributed Database
- Object-Oriented Databases
Config Config Files
- XML
- JSON
- YAML
- XAML
- TOML
Programming Language
- Java
- PHP
- .NET (C#, VB, ASP)
- Ruby/ on rails Python
- Go
Cloud/Hosting
- AWS Suite
- Azure Suite
- Google Cloud
- IIS
Containerization/CICD
- Kubernetes
- Docker
- Teamcity
API's
- Node.js
- API.NET Web API
- Oauth
- REST, SOAP, RPCAPI
Testing
- Cross Browser
- TDD
- Unit Tests
- Mocking Framework for Unit testing
- JS Testing (Jasmine)
- Selenium
- regression testing
- integration testing
- end 2 end
- automated tests
Security
- OWASP Top 10: A1 – Injection
- OWASP Top 10: A2 – Broken Authentication and Session Management
- OWASP Top 10: A3 – Sensitive Data Exposure
- OWASP Top 10: A4 – XML External Entities
- OWASP Top 10: A5 – Broken Access Control
- OWASP Top 10: A6 – Security Misconfiguration
- OWASP Top 10: A7 – Cross-Site Scripting
- OWASP Top 10: A8 – Insecure Deserialization
- OWASP Top 10: A9 – Using Components With Known Vulnerabilities
- OWASP Top 10: A10 – Insufficient Logging And Monitoring
Principles
- Solid
- Understands and can apply the Single Responsibility Principle
- Understands and can apply the Open/Closed Principle
- Understands and can apply the Liskov Substitution Principle
- Understands and can apply the Interface Segregation Principle
- Understands and can apply the Dependency Inversion Principle
OO Principles
Understands and can apply Inheritance
- Understands and can apply Polymorphism
- Understands and can apply Encapsulation
- Understands and can apply Abstraction
- Design Patterns
- Creative Design Patterns
- Singleton, Factory…
- Structural Design Patterns
- Strategy, Chain of command…
- Behavioral Design Patterns
- Proxy, Facade…
- Software Development Life Cycle (SDLC)
- Analysis
- Design
- Development
- Testing
- Methodologies
- Agile
- Waterfall
- BDD
- Extreme Programming
Terminal
- Powershell
- Bash
- Bat
- Command Prompt
Data Structures
- Array
- Trees
- Stack
- Queue
- Linked Lists
- Hash Tables
- Heaps
Algorithms
- Searching
- Linear Search
- Binary Search
- Jump Search
- Interpolation Search
- Exponential Search
- Sublist Search (Search a linked list in another list)
- Fibonacci Search
- The Ubiquitous
- Binary Search
- Sorting
- Bubble Sort
- Insertion Sort
- Selection Sort
- Shell Sort
Any help would be greatly appreciated.
submitted by /u/danhasahugemellon
[link] [comments]
from Software Development – methodologies, techniques, and tools. Covering Agile, RUP, Waterfall + more! https://ift.tt/8YHkm1w