16 lines
1.4 KiB
Markdown
16 lines
1.4 KiB
Markdown
## Working method
|
|
|
|
_Methods I employ to deliver elegant, efficient, readable, understandable and maintainable code that adds value to a company and/or product._
|
|
|
|
- "Always choose the best tool for the job"
|
|
- Cloud and application structure using [The Twelve-Factor App](https://12factor.net/)
|
|
- Software architecture via a simplified version of the principles of [The Clean Architecture](https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html), [DDD](https://en.wikipedia.org/wiki/Domain-driven_design) and [Layered Architecture](https://en.wikipedia.org/wiki/Multitier_architecture).
|
|
- Prevention of [technical debt](https://en.wikipedia.org/wiki/Technical_debt), short term and long term
|
|
- Everything (even [infrastructure as code](https://en.wikipedia.org/wiki/Infrastructure_as_code)) in version control (Git/Perforce)
|
|
- Project management via SCRUM/Agile principle, without unnecessary meetings
|
|
- Bringing together Development, Security and Operations through [DevSecOps](https://www.devsecops.org/) and [secure by design](https://en.wikipedia.org/wiki/Secure_by_design).
|
|
- Test-Driven Development (TDD) of domain logic where it makes sense
|
|
- Versioning according to [Semantic Versioning](https://semver.org/)
|
|
- Adhere to the [ACM Code of Ethics](https://www.acm.org/code-of-ethics)
|
|
- Use of free (open-source) software where possible, contributing when possible
|