زمان یادگیری یا قرار گرفتن توی جامعه ی دولوپر ها و زمان مصاحبه ممکنه یک سری کلمات به گوشتون بخوره که جدید باشن و حتی مفهومشون خیلی عمیق تر از معنی خود اون کلمه باشه.
اینجا سعی کردم براتون کلمات کلیدی مربوط به حوزه ی بک اند رو بیارم که توی مصاحبه هم خیلی به کارتون میاد و مباحث مهمی هستن.
میتونید درموردشون سرچ کنید و یاد بگیرید.
من تلاش کردم تا توی دسته بندی های جدا گانه قرارشون بدم تا براتون راحت تر باشه :)

زبانها: Python
فریمورکها: Django, FastAPI, Flask, Pyramid
ORMها: Django ORM, SQLAlchemy
SQL: PostgreSQL, MySQL, SQLite
NoSQL: MongoDB, Graph Databases
مفاهیم: ORM, Database Migration, Data Migration, ORM Queries, Data Validation, Data Serialization
ACID Transactions, Indexing Strategies, Database Normalization
Redis (به عنوان دیتابیس)
Elasticsearch (برای جستجوی متن)
الگوها: Microservices, REST API, RESTful Services, GraphQL, API-first Development
ارتباطات: Middleware, URL Routing, WebSockets, HTTP/HTTPS
Event-Driven Architecture, Message Queues (RabbitMQ), Serverless Functions,
Design Patterns (Repository, Factory, etc.)
Domain-Driven Design (DDD)
امنیت: Authentication, Authorization, JWT, OAuth, SSL Certificates, CORS, API Rate Limiting
OWASP Top 10, CSRF Protection, Password Hashing (Bcrypt/Argon2), Role-Based Access Control (RBAC)
وبسرورها و اینترفیسها: Nginx, Gunicorn, WSGI, ASGI
کانتینر و کلاود: Docker, AWS, Google Cloud Platform, Azure, Heroku, Beanstalk
مفاهیم: Deployment, Load Balancing, Environments (Dev, Test, Production)
Kubernetes (K8s)
Infrastructure as Code (Terraform)
CI/CD Pipelines
Reverse Proxying
ابزارها: Celery, Redis
مفاهیم: Caching
Task Scheduling, Distributed Locking
Caching Strategies (Write-through, Cache-aside)
تست: Unit Testing, TDD
مانیتورینگ: Logging, Monitoring, Sentry, Prometheus, Grafana
Integration Testing, Load Testing (Locust/JMeter), Distributed Tracing
مدیریت وابستگی: Pipenv, Virtualenv, Poetry
توسعه: Version Control (Git), CLI, Agile Development, Scrum, Kanban
مستندات: API Documentation, Swagger, Postman
Linters & Formatters (Black, Flake8), Pre-commit Hooks, Logging Best Practices (Structured Logging)
این موارد برای حرفه ای تر شدنتون کاربردیه اما اضافی هستش و سرچ کردن درموردشون برای مبتدی ها الزامی نیست :) :
Distributed Systems (سیستمهای توزیع شده):
فهمیدن مباحثی مثل CAP Theorem (ثبات، در دسترس بودن و تحمل خطای شبکه) برای مقیاسپذیری سیستمها حیاتی هستش.
Concurrency & Parallelism:
در پایتون، مفاهیم AsyncIO و Threading / Multiprocessing برای بهینهسازی کدهای بکاند خیلی مهم هستن.
API Versioning:
گرچه بهش بالاتر اشاره کردم، اما یادگیری متدهای مختلفِ ورژندهی (URL-based, Header-based) و استراتژیهای Deprecation خیلی به کیفیت API شما کمک میکنه.
Security Best Practices:
جدا از مواردی که بالاتر گفتم، مطالعه API Security (مثل جلوگیری از SQL Injection و نوشتن کدهای امن) یکی از ستونهای اصلی بکاند هستش و از نظر من یادگیری این یکی الزامیه :)
شاید در اینده درمورد نوشتن کد های امن یک پست بنویسم، اگه دوسدارین بگید که در الویت قرارش بدم :)💕