"I want to build a more efficient, cost-saving system."
👤 Role
- Mid-level or senior developer or DevOps architect.
- Approaches Salt from a DevOps and development perspective.
🧠 Skill levels
- Salt: Intermediate to advanced
- Operations: Intermediate to advanced
- Development: Intermediate to advanced
🎯 Goals
- Build stateful, automated infrastructure solutions that meets the core business needs and long-term business objectives.
- Design, build, and run IT systems, services, and infrastructure to meet changing business requirements.
- Hopes to discover new ways that Salt can help optimize their system architecture and processes by learning what other solutions have been developed and tested in the Salt Project community and beyond.
- Wants confidence that Salt solutions are battle-tested and verified in real-world deployments at scale and in harmony with industry best practices.
- Needs to quickly and easily train stakeholders (such as team members, clients, or coworkers in other departments) so that they can understand Salt, start working with it quickly, and/or understand how it impacts their work.
🧭 Values
- The expertise provided by the Salt Project community.
- Wants multiple, in-depth examples and case studies that offer insights into real-world scenarios. Examples need enough context to provide a deeper understanding of how Salt works.
- Ability to customize solutions to specific needs and opportunities to explore edge cases.
- Understand the relationship between the different architectural components, modules, and features of Salt to learn how to develop solutions using Salt. This includes information that can help them evaluate related enterprise products if it makes sense for their business needs.
- Understanding the nuanced relationship between various Salt elements, including enterprise and open-source components.
😢 Pain points
- Appreciates that Salt provides many different ways to do something, but struggles to know which solution is the best or the easiest or the most scalable. The hard part is weighing how much time it will take to discover a solution, learn it in depth, and see how it interacts in their environment. That initial upfront research cost is very high.
- Difficulty navigating the module documentation to discover the solutions they need.
- Problems interacting with a code base where the underlying data dictionary-based makes it challenging to discover information programmatically.
- Locating and retrieving buried solutions, examples, and use cases from the community forums and Slack channels.
📌 Use cases
- Writing states and orchestrations to define and manage the desired configurations of systems effectively.
- Scaling infrastructures efficiently to provision and configure machines to meet growing business needs.
- Implementing automation and orchestration to streamline repetitive tasks, cut costs, and enhance operational efficiency.
- Managing continuous software deployment, ensuring efficient and consistent updates across infrastructures and a reliable delivery pipeline.
- Optimizing system configurations for better performance, security, and to align with industry best practices.
🥇 Competencies
- Linux/Unix systems administration skills.
- Windows systems administration skills.
- Python and possibly additional languages (C#, Ruby, Pearl, and more).
- DevOps and infrastructure-as-code best practices.
- Infrastructure-as-Code tools like Terraform or CloudFormation.
- Containerization tools like Docker or Kubernetes.
- Version control tools like Git.
- Templating and configuration skills like YAML/Jinja.
- Command line interfaces.