7.4 KiB
General
Check the Repo content
Files that must be inside the repository:
- A documentation in the
README.md
file. - Source code for the microservices and any scripts used for deployment.
- Configuration files for your IaC, containerization, and orchestration tools.
Are all the required files present?
Play the role of a stakeholder
Conduct a roleplay question session with the students, asking them to explain their solution as if they were presenting it to a team or a stakeholder. Evaluate their understanding of the concepts and technologies used in the project, as well as their ability to communicate effectively and think critically about their solution. You can ask them the following questions:
-
What is cloud and what are its benefits?
-
Why we should deploy the solution in the cloud instead of on-premises?
-
How did you decide on the cloud provider for this project, and what factors did you consider when making that decision?
-
Can you explain the architecture of your cloud-based microservices application and how the different components interact with each other?
-
Can you explain the cost of the solution and how you control it and make sense of it?
-
How did you ensure that the application is secure, and what security best practices did you implement?
-
What monitoring and logging tools did you use, and how do they help you identify and troubleshoot issues with the application?
-
Can you describe the auto-scaling policies you implemented and how they help the application handle varying workloads?
-
How did you optimize the Docker images for each microservice, and how did it impact build times and image sizes?
-
If you were to start this project again, what changes would you make to your approach or the technologies you used?
-
How can your solution be extended or modified to handle future requirements, such as adding new microservices or migrating to a different cloud provider?
-
Can you discuss any challenges you faced during the project and how you overcame them?
-
How did you ensure that your documentation is clear and complete, and what steps did you take to make it easy for others to understand and maintain your solution?
Did the students have a good understanding of the concepts and technologies used in the project?
Did the students have the ability to communicate effectively and explain their decisions?
Did the students are capable to think critically about their solution and consider alternative approaches?
Provide feedback to the student on their performance in the roleplay question session, highlighting their strengths and areas for improvement. Offer suggestions for further learning and resources to help them continue to develop their DevOps, cloud, and communication skills.
Review the Architecture Design
Review the student's architecture design, ensuring that it meets the project requirements:
-
Scalability
: Ensure that the architecture can handle varying workloads and can scale up or down as needed. -
Availability
: Design the architecture to be fault-tolerant and maintain high availability, even during component failures. -
Security
: Incorporate security best practices into the architecture, such as encrypting data at rest and in transit, using private networks, and securing API endpoints. -
Cost-effectiveness
: Be mindful of the costs associated with the services and resources you select. Aim to design a cost-effective architecture without compromising performance, security, or scalability. -
Simplicity
: Keep the architecture as simple as possible, while still meeting the project requirements. Avoid overcomplicating the design with unnecessary components or services.
Did the student Architecture design meets the project requirements?
Did the students have the ability to design a cost-effective architecture that meets the project requirements?
Did the choice of services and architectural patterns align with best practices for scalability, availability, and security?
Provide feedback on their design choices, highlighting areas where they excelled and areas where improvements can be made.
Check the Student Documentation
The Documentation must exist in the README.md
file!
Did the README.md file contains all the required information about the solution (prerequisites, configuration, setup, usage, ...)?
Is the documentation provided by the student clear and complete, including well-structured diagrams and thorough descriptions?
Verify the deployment
Are all the microservices running as expected in the cloud environment, with no errors or connectivity issues?
Is the load balancing configured correctly, effectively distributing traffic across the services?
Are the microservices communicating with each other securely, using proper authentication and encryption methods?
Evaluate the infrastructure setup
Are the IaC tools, such as Terraform or CloudFormation, used effectively to provision and manage resources in the cloud environment?
Does the infrastructure setup follow best practices for security and resource management?
Assess containerization and orchestration
Are the Dockerfiles optimized for efficient container builds, and do they follow best practices?
Is the orchestration setup (e.g., Kubernetes manifests or AWS ECS task definitions) configured correctly and according to best practices?
Evaluate monitoring and logging
Do the monitoring and logging dashboards provide useful insights into the application's performance and health?
Are alerting mechanisms in place to notify the team of potential issues on time?
Assess optimization efforts
Are the auto-scaling policies configured correctly to handle varying workloads?
Do the application and resource allocation remain efficient under different load scenarios?
Check security best practices
Has the student implemented security best practices, such as using HTTPS, securing API endpoints, and regularly scanning for vulnerabilities?
Give your Feedback
Provide constructive feedback to the student on their solution, highlighting areas where they excelled and areas where improvements can be made. Offer suggestions for further learning and resources to help them continue to develop their DevOps and cloud skills.
Review Cloud Certification Preparation Efforts
Verify that the student has chosen a cloud platform certification to pursue and has made efforts to study the core concepts, services, and best practices for the chosen platform. Provide guidance and feedback on their preparation efforts, and offer suggestions for further learning and resources to help them succeed in their certification exam.