← Назад к вопросам

Был ли front на проекте

1.2 Junior🔥 191 комментариев
#Опыт и soft skills

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI21 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

# Front-end опыт на Data Engineering проектах

Короткий ответ

Нет, я не специализируюсь на front-end, но имею практический опыт работы с dashboarding tools и визуализацией данных на нескольких проектах.

Frontend Stack на моих проектах

1. PayFlow (финтех, последнее место)

Internal Analytics Dashboard:

  • Технология: Metabase (self-hosted)
  • Моя роль: Backend (SQL queries, data preparation), минимально frontend
  • Что делал:
    • Писал SQL queries для дашбордов
    • Создавал saved questions (по сути шаблоны)
    • Настраивал granular permissions (какой аналитик может видеть какие данные)
    • Помогал аналитикам читать Metabase UI

Real-time Metrics (внутренний инструмент):

  • Технология: Flask + React (очень простой фронт)
  • Моя роль: написал backend (Flask API, кэширование в Redis)
  • Frontend: Junior developer писал компоненты, я лишь косвенно влиял
  • API который я писал:
    @app.route('/api/metrics', methods=['GET'])
    def get_metrics():
        # Вычисляем метрики из BigQuery/Redis cache
        active_users = get_cached_metric('active_users_today')
        total_volume = get_cached_metric('transaction_volume_today')
        default_rate = get_cached_metric('default_rate_current')
        return jsonify({
            'active_users': active_users,
            'total_volume': total_volume,
            'default_rate': default_rate
        })
    
  • Frontend (React) потреблял этот API и рендерил карточки с метриками

2. Предыдущий проект (E-commerce, 2020-2022)

Customer Analytics Platform:

  • Технология: Tableau
  • Моя роль: 100% backend (data preparation и ETL)
  • Tableau делал: Визуализацию
  • Взаимодействие: Аналитики рассказывали что им нужно → я готовил данные в нужной структуре → они создавали визуализацию

Пример:

-- Я готовил вот такие таблицы
CREATE TABLE fact_customer_purchases (
    customer_id UUID,
    purchase_date DATE,
    amount DECIMAL,
    product_category VARCHAR,
    channel VARCHAR  -- online/offline
) WITH (
  OIDS = False
);

-- Tableau потом создавал дашборды на их основе

Почему Data Engineer редко пишет frontend

1. Разные skills

  • Data Engineer: SQL, Python, architecture, performance
  • Frontend Developer: JavaScript/TypeScript, UI/UX, CSS, interactive components

Пример: Я не знаю React hooks, CSS Grid, и я не умею делать красивые интерфейсы.

2. Разные приоритеты

  • Data Engineer: Данные должны быть быстрые, надёжные, чистые
  • Frontend: Интерфейс должен быть интуитивный, красивый, responsive

3. Разные инструменты

  • Data Engineer: SQL, Spark, Airflow
  • Frontend: React, Vue, Angular, Tailwind

Аюча я пишу React — это будет медленнее чем если бы писал frontend developer.

Когда Data Engineer приходит на frontend (и зачем)

Сценарий 1: Простая API и dashboard

# Data Engineer может написать:
# 1. Backend API (Python/Flask/FastAPI)
from flask import Flask, jsonify
import pandas as pd
from sqlalchemy import create_engine

app = Flask(__name__)
engine = create_engine('postgresql://...')

@app.route('/api/user-stats', methods=['GET'])
def user_stats():
    query = """
    SELECT 
        DATE(created_at) as date,
        COUNT(DISTINCT user_id) as new_users,
        SUM(amount) as total_revenue
    FROM users
    GROUP BY DATE(created_at)
    ORDER BY date DESC
    LIMIT 30
    """
    df = pd.read_sql(query, engine)
    return jsonify(df.to_dict('records'))

# 2. HTML страница (базовая)
import requests
import json

response = requests.get('http://localhost:5000/api/user-stats')
data = response.json()

html = f"""
<html>
<body>
    <h1>User Stats</h1>
    <table>
        <tr><th>Date</th><th>New Users</th><th>Revenue</th></tr>
        {''.join([f"<tr><td>{row['date']}</td><td>{row['new_users']}</td><td>${row['total_revenue']}</td></tr>" for row in data])}
    </table>
</body>
</html>
"""
print(html)

Это работает и не требует React knowledge.

Сценарий 2: Интеграция данных

Ситуация: Frontend developer нужна справка как доступить к данным.

// Frontend developer пишет React компонент
import { useEffect, useState } from 'react';

export function UserStats() {
  const [data, setData] = useState(null);
  
  useEffect(() => {
    // Вызывает API который я написал
    fetch('/api/user-stats')
      .then(res => res.json())
      .then(data => setData(data));
  }, []);
  
  return (
    <div>
      {data?.map(row => (
        <div key={row.date}>
          {row.date}: {row.new_users} users
        </div>
      ))}
    </div>
  );
}

Моя роль: обеспечить правильный API, документировать его.

Мой уровень в frontend

✅ Могу

  • Написать простой REST API
  • Создать базовый HTML/CSS
  • Понять как React компоненты работают (читать чужой код)
  • Помочь debug API issues со стороны backend'а
  • Написать простой CLI инструмент

❌ Не могу

  • Написать красивый, responsive интерфейс
  • Оптимизировать React performance
  • Работать с CSS Grid/Flexbox на уровне эксперта
  • Помочь с JavaScript issues (async/await, promises)
  • Создать интерактивный dashboard с анимациями

Когда я говорю frontend кому-то

Я: Мне нужен график где можно выбрать дату.

Frontend developer: Ok, API какой?

Я:

GET /api/metrics?date_from=2024-01-01&date_to=2024-03-21

Ответ:
{
    "date": "2024-03-21",
    "metric_name": "active_users",
    "value": 12345
}

Frontend developer: Ок, сделаю React компонент с date picker.

Это хороший workflow: Data Engineer говорит что нужно, frontend developer знает как это сделать красиво.

Заключение

Как Data Engineer:

  • Интересуюсь frontend (tools, visualization)
  • Могу помочь с backend частью (API, data preparation)
  • Не специализируюсь на frontend (это отдельная профессия)
  • Уважаю frontend developer'ов — это сложная работа

Если нужен full-stack Data Engineer (может писать front + back) — ищи кого-то другого. Я — backend/data specialist, и это мой фокус.

Был ли front на проекте | PrepBro