⚠️ Note: This project has been archived and migrated to Zühlke's internal GitLab instance. Please visit the new repository at: https://codehub.zuehlke.com/learning-journey/archetypesThe Zühlke Archetypes website is still available to be viewed publicly at: https://learning-journey.pages.codehub.zuehlke.com/archetypes/
This project aims to help software engineers understand the skills and knowledge required at each stage of their career, from novice to expert. It serves as a roadmap for personal and professional development, enabling individuals to identify areas for growth and track their progress. This is done by using 'archetypes' that define competencies 'topics' expected at different competency stages, as well as 'learning resources' that guide individuals in acquiring these skills.
The project is structured into several key components:
src/- This folder contains definition files that outline the archetypes, topics, and learning resources in Markdown format.src/archetypes/- Contains archetype definitions, which describe the competencies and skills expected at various stages of a software engineer's career.src/topics/- Contains definitions of topics that are relevant to the archetypes, detailing the specific skills, knowledge areas and any learning resources associated with them.src/assets/- Contains images and other assets used in the documentation.
_site/- A static website generated from these definitions using MkDocs, providing an accessible and user-friendly interface for exploring the archetypes and learning pathways. Not to be edited directly or committed to the repository.
We welcome contributions to the Zühlke Archetypes and Learning Pathways project! Whether you're a seasoned developer or just starting out, your insight and experiences can help shape a more comprehensive and useful resource for everyone.
Please read through the CONTRIBUTING.md file for guidelines on how to contribute effectively. This document covers everything from reporting issues to submitting pull requests, ensuring a smooth and collaborative process.
This project uses just as a command runner and uv for Python environment and dependency management.
# On macOS (using Homebrew)
brew install justSee the just installation guide for more options.
# On macOS (using Homebrew)
brew install uvSee the uv installation guide for more options.
just installThe pre-commit hook will rebuild the static website before every commit.
This project is maintained by:
- Patrick Burls (@pburls)
- Fabio Scagliola (@fabioscagliola)
Feel free to reach out to any maintainer if you have questions or need assistance. You can also contact us via the Archetypes > General Teams channel using the @maintainers tag.
We'd like to thank the following individuals for their significant contributions:
- Kevin Denver (@kevin-denver) - Set up the initial project and scaffolded the Core Software Engineer archetype
- Milan Starcevic (@MilanStarcevicZuehlke) - Created the FSI Software Engineer archetype and contributed extensive FSI-related topics (banking, insurance, financial crimes, regulations)
- Milos Bjelcevic (@milosbjelceviczuhlke) - Contributed to the project structure and design
- Fabio Scagliola (@fabioscagliola) - Contributed to the project structure and design
- Patrick Burls (@pburls) - Contributed to the project structure and design
For a complete list of all contributors, see our GitHub contributors page.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
