All posts
Python Testing #5: Testing the Outside World — Files, HTTP, Databases, and Web Frameworks
A test that mocks everything guarantees nothing about real behavior. A strategy for testing the outside world: write real files with tmp_path, block only the network boundary with respx, and reset databases with transaction rollbacks.
AWS Certified Cloud Practitioner (CLF-C02) #10: Full-Scale Mock Exam — 50 Questions with Explanations
The final post of the CLF-C02 series. Fifty questions sized to match the real exam domain weights (24/30/34/12%). Domain 1 (Cloud Concepts) 12 questions, Domain 2 (Security) 15 questions, Domain 3 (Cloud Technology) 17 questions, Domain 4 (Billing) 6 questions. The real exam is 65 questions in 90 minutes; this mock is scored over 50 questions, target 60–75 minutes, and 36+ correct (72%) puts you in safe passing territory. Each question is followed by the answer and an explanation.
AWS Certified Solutions Architect - Associate (SAA-C03) #2 Domain 1-1 Secure Architectures — IAM in Depth
The first post of the SAA-C03 security domain. After a quick review of the four IAM components (User/Group/Role/Policy), it covers the policy evaluation logic (explicit Deny wins), the difference between trust policies and permission policies, temporary credentials and AssumeRole via STS, cross-account access, and permission boundaries and SCPs at the SAA level. On the exam, the security domain carries the largest weight at 30%, and IAM is its core.
K8s Practice #6: Operations Checklist — Upgrades / Backup,Recovery / Cost / Security
The last post in the K8s Practice series. Bringing up a cluster and operating it safely for a year are different kinds of work. This post organizes the EKS upgrade cycle, node group replacement pattern, RDS automated backup and PITR, cost management with Karpenter and Spot, and regular security checks with kube-bench and Trivy. It also includes a retrospective of the 6-post K8s Practice series and the full 26-post K8s track.
Python Testing #4 mock and monkeypatch: Controlling What You Can't Control
How to pin down dependencies that change on every run — time, randomness, external APIs — with monkeypatch and unittest.mock, including the patch-path trap and where over-mocking begins.
AWS Certified Cloud Practitioner (CLF-C02) #9 Exam Tips and Common Mistake Patterns
A condensed read-once-more piece for the moments right before you walk into the CLF-C02 exam. Time management for 65 questions in 90 minutes; common pitfall question shapes like multiple-response and double negatives; pairs of services people confuse (S3 vs EBS, CloudTrail vs Config, ALB vs NLB, and so on); four techniques for narrowing down answers; and a final 30-minute pre-exam checklist. The next post, #10, is the full-scale mock exam.
AWS Certified Solutions Architect - Associate (SAA-C03) #1 Exam Introduction — Exam Structure and Study Roadmap
The opening post of the AWS Certified Solutions Architect - Associate (SAA-C03) series. It covers the structure of 65 questions, 130 minutes, and a 720 passing score; the weight and meaning of the four domains (Security 30% , Resilience 26% , High Performance 24% , Cost 20%); how it differs from Cloud Practitioner; and a study strategy that turns the intuition built on the hands-on [AWS track](/en/posts/aws-basics-1) and [CLF-C02](/en/posts/aws-clf-1-exam-introduction) into design-oriented exam answers. This 16-part series targets a SAA-C03 pass, wrapping up with a full-scale mock exam in #16.
K8s Practice #5: Monitoring & Alerting — Prometheus / CloudWatch / Alertmanager
The `myshop-api` built in [#4](/en/posts/k8s-practice-4) now has code-to-deploy automation, but operations do not work unless you can see what it is doing. This post organizes the EKS cluster observability stack. We install Prometheus + Grafana + Alertmanager at once with kube-prometheus-stack, combine that with CloudWatch via Container Insights and Fluent Bit, standardize myshop-api metrics and alerts via ServiceMonitor / PrometheusRule, and organize the on-call flow with the 4 golden signals rule set and Slack / PagerDuty routing.
Python Testing #3 parametrize and Markers: Multiply Cases, Run Selectively
How to collapse input-only test variations into one case table with @pytest.mark.parametrize, and run only the tests you want using skip, skipif, xfail, custom markers, and the -m and -k options.
Angular in Practice #6: Testing and Deployment — Wrapping the Track
The final post of the practice series. We fill the dashboard with tests, package it with Docker, deploy it to Cloudflare Pages, and run a full CI/CD cycle with GitHub Actions. Then we look back across all 27 posts of the Angular track.
AWS Certified Cloud Practitioner (CLF-C02) #8 Domain 4 Billing and Support — Pricing Models, Support Plans, TCO
The final CLF-C02 domain — Billing, Pricing, and Support (12%). The weight is small, but the question patterns are formulaic, so this is a domain you can take near-full marks on. We cover the four EC2 pricing models (On-Demand, Reserved, Savings Plans, Spot), the free tier, AWS Pricing Calculator and TCO Calculator, Cost Explorer, AWS Budgets, Cost and Usage Report, Consolidated Billing, the four Support Plan tiers (Basic, Developer, Business, Enterprise), and the check coverage of Trusted Advisor.
Django DRF #6: Testing and Deployment — Docker, gunicorn, nginx
Integration tests with APITestCase / APIClient / pytest-django / factory_boy, plus production deployment via Docker multi-stage + gunicorn + nginx + docker-compose.