class ML_Developer:
name = "Mederbek"
experience = "24 months"
focus = "ML Engineering"
interest = ["Agentic AI Engineer", "Research Engineer", "Post-Training & Reasoning", "Alignment & AI Safety"]
principles = ["DRY", "KISS", "SOLID"]
goal = "AGI Engineer"
backend = {
"backend": ["Python", "FastAPI", "Django", "Django Templates", "DRF", "Django Channels", "Pydantic", "SQLAlchemy", "Alembic", "sqladmin"],
"platforms": ["Google Colab", "Kaggle", "Hugging Face", "n8n"],
"databases": ["PostgreSQL", "MySQL", "Redis"],
"devops": ["Linux", "Docker", "NGINX", "AWS", "Gunicorn", "Uvicorn", "Daphne", "Git", "GitHub", "Postman"],
"api": ["REST", "GraphQL", "WebSocket", "gRPC", "SOAP", "HTTP/2", "CORS"],
"architecture": ["Monolith", "Microservices", "n8n"],
"libraries": ["Alembic", "Joblib", "Pillow", "pytest", "Authlib", "passlib", "Streamlit"],
}
ml = {
"ml_ai": ["PyTorch", "Scikit-learn", "OpenCV", "YOLO", "NumPy", "Pandas", "Matplotlib", "Seaborn", "RoboFlow"],
"audio_ml": ["torchaudio", "MelSpectrogram", "AmplitudeToDB", "Resample (сэмплрейт нормализация)", "soundfile"],
"nlp": ["torchtext", "LSTM", "BiLSTM", "nn.Embedding", "CountVectorizer", "Naive Bayes (MultinomialNB)", "build_vocab_from_iterator", "HuggingFace datasets"],
"cnn_architectures": ["Conv2d/MaxPool2d/AdaptiveAvgPool2d", "BatchNorm2d", "Dropout2d", "VGG-style blocks", "transfer learning patterns"],
"classic_ml": ["LogisticRegression", "DecisionTree", "RandomForest", "XGBoost", "SVC", "KNeighborsClassifier"],
"ml_techniques": ["class_weight='balanced' (дисбаланс классов)", "stratify (стратифицированное разбиение)", "CosineAnnealingLR / StepLR (scheduler)", "label_smoothing", "collate_fn (кастомный батчинг)", "AdaptiveAvgPool2d (переменная длина входа)"],
"metrics": ["accuracy", "F1", "ROC-AUC", "R²", "precision/recall", "classification_report"],
}
agent_junior = {
"llm_basics": ["OpenAI API / Claude SDK", "Sampling (temperature, top-k, top-p)"],
"prompting": ["Few-shot / Chain-of-Thought", "Structured output (JSON mode)", "System prompt design"],
"agents_core": [
"Tool Calling + JSON Schema design",
"ReAct pattern (Reason+Act)",
"LangGraph базовый (простые графы, state, edges)",
"Agent memory (short-term vs long-term)",
"Multi-agent basics (orchestrator-worker концептуально)",
],
"rag_basics": [
"Embeddings концептуально",
"Qdrant/pgvector — базовый поиск",
"Chunking стратегии",
"Hybrid search (BM25 + vector)",
"Retrieval evaluation (hit rate, базовые метрики)",
],
"context": ["Sliding window", "Token budget — считать примерно"],
"eval_debug": ["LLM-as-judge базово", "Trace logging (LangSmith/Langfuse)"],
}
genai = {
"fine_tuning": ["LoRA / QLoRA концептуально", "Когда fine-tuning нужен вместо RAG/prompting"],
"tool_calling": ["Parallel tool calls", "Forced tool choice / tool_choice параметр"],
"safety": ["Guardrails", "Content moderation (входной/выходной фильтр)"],
"generation_eval": ["Метрики генерации текста (не путать с retrieval-метриками из rag_basics)"],
}