-
Notifications
You must be signed in to change notification settings - Fork 18
/
root.yml
167 lines (167 loc) · 4.91 KB
/
root.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
Handbook:
- Development:
- Development Environment and Tools:
- Environment Setup:
- Vagrant and VirtualBox
- Automation Scripts @stop
- Common File Formats @stop:
- YAML
- JSON
- Markdown
- XML
- Time Management @stop
- Editors @stop:
- Sublime
- Atom
- IDEs @stop:
- Visual Studio
- MonoDevelop
- Eclipse
- IntelliJ
- NetBeans
- Diff and Merge Tools @stop:
- DiffMerge
- WinMerge
- Linux skillset @stop
- Developing with Docker @stop:
- Docker concepts
- Docker Compose
- Choosing the right language @stop
- Code Development Lifecycle:
- Documenting @stop:
- Principles and Frameworks
- Lightweight Markup Languages
- Mind Mapping Tools
- Version Control:
- Tools @stop
- Git
- SVN @stop
- TFS @stop
- CVS @stop
- Perforce @stop
- How to write commit messages and release notes @stop
- Testing:
- Unit Test @stop
- Property Based Testing
- Integration and System Test @stop
- Performance and Memory check (Big O) @stop
- Test Code Coverage check @stop
- Load and stress tests @stop
- Static Analysis:
- Code Duplication Analysis
- Spell Check
- Effective Peer Code Review @stop
- Root cause analysis @stop
- Effective problem solving - Debugging Mindset @stop
- Continuous Integration (CI) @stop:
- TravisCI
- CircleCI
- Jenkins
- Testing with Docker @stop
- Software Development Processes @stop
- Production:
- Deployment Management:
- Virtualization @stop
- Containerization:
- Deploying with Docker
- Docker orchestration @stop
- Automation @stop:
- Ansible
- Puppet
- Chef
- Terraform
- Build Servers @stop:
- Jenkins
- Deployment workflows @stop:
- Using a staging environment
- Green-Blue deployments
- Production tests (Acceptance-Smoke-Sanity) @stop
- Continuous Deployment-Delivery (CD) @stop
- DevOps @stop:
- Building a solid infrastructure (monitoring, alerting, logging)
- High Availability
- Auto Scaling
- NOC (Network Operation Center) @stop
- Coding:
- Code Quality:
- Technical Debt
- General Coding Best Practices:
- Avoiding Side-Effects
- Optimization and Refactoring:
- Continuous Improvements
- Clean Code and Code Smells:
- General Overview @stop
- Common Smells - Patterns and Remedies @stop
- Clean Design
- Software quality metrics @stop
- Development Models:
- Test First Approaches:
- Principles @stop
- Hands on practices @stop
- Supporting Frameworks @stop
- Test Driven Development (TDD) @id=test-driven-development
- Code Composition @stop:
- Principles
- IoC, DIP, DI:
- Frameworks:
- MEF
- Unity
- Composite Applications:
- Principles (Vertical Concerns)
- Frameworks:
- Microsoft PRISM
- Domain Specific Language (DSL) Based Development Model @stop:
- Internal vs External DSL
- Externalization of code
- Supporting Frameworks
- Defensive Programming @stop
- Design patterns @stop
- Programming Languages:
- Python Tips
- Polyglotism @stop:
- Side-by-side languages clusters syntax comparisons
- Regular Expressions - Syntax, Patterns and Tools
- Anonymous methods and lambda expressions @stop
- Developing an Interpreter @stop
- Frameworks and Libraries @stop
- Ecosystem-Community-Open Source:
- Repository Hosting Services:
- GitHub
- GitLab
- BitBucket @stop
- How to choose an open source license @stop
- Common Standards @stop:
- Coding style standards
- Medical Domain Specific Standards:
- DICOM
- HLStandards
- Web Development @stop:
- Web Development Toolkits:
- UI Toolkit:
- Bootstrap
- Foundation
- Kendo UI
- Material UI
- UI Frameworks:
- Angular
- React
- Vue
- Testing Libraries:
- Mocha.js
- Jasmine
- QUnit
- Validators:
- W3C website Validator
- Security @stop
- Databases @stop
- Cryptography
- Soft Skills (The Human Factor) @stop:
- How to effectively interact with other people
- Difficult Conversations
- Effective Communications with Teams
- Effective Communications with Managers
- Global Cultural Differences
- Influencing without being judgmental
- How to interview (skill testing):
- TestDome.com
- Video Series