Комментарии (1)
Ответ сгенерирован нейросетью и может содержать ошибки
Критерии проектов, на которых я не хотел бы работать
После 10+ лет опыта я научился определять проекты и команды, которые не соответствуют моим профессиональным стандартам. Вот мои честные критерии.
1. Отсутствие технического лидерства
Проекты, где:
- Нет архитектуры или она хаотична
- Технические решения принимают менеджеры, а не разработчики
- Никто не отвечает за качество кода
- Legacy код без плана миграции
Почему это проблема: Без хорошей архитектуры каждый спринт становится всё сложнее. Технический долг растет экспоненциально.
// Пример плохой архитектуры: всё в одном файле
class MyWidget extends StatefulWidget {
// 5000+ строк кода
// Business logic
// UI logic
// State management
// API calls
// все в кучу
}
2. Проекты без тестов
Не хочу работать, если:
- Coverage < 50%
- Нет CI/CD pipeline
- Люди боятся рефакторить код
- QA только ручное тестирование
Почему: Тестирование — это инвестиция в скорость разработки. Без тестов каждое изменение — риск.
// Хорошо: тестируемый код
class UserRepository {
final HttpClient client;
const UserRepository(this.client);
Future<User> getUser(int id) async {
// Dependency injection позволяет мокировать client
}
}
// Плохо: нетестируемый код
class UserRepository {
Future<User> getUser(int id) async {
final client = HttpClient(); // Жёсткая зависимость
// ...
}
}
3. Команды без кросс-функциональности
Проблемные сценарии:
- Backend разработчики пишут API без консультации мобильных
- Дизайнеры создают макеты без понимания возможностей платформы
- QA только проверяет готовый код, не участвует в планировании
- Нет коммуникации между departmentами
Мой подход: Лучшие проекты — где Frontend/Backend/Design/QA обсуждают требования вместе.
4. Проекты с токсичной культурой
Красные флаги:
- Неуважение к опыту разработчиков
- Постоянный crunch (работа в выходные обязательна)
- Микроменеджмент (проверка каждого коммита)
- Отсутствие feedback и развития
- Политики и внутренние конфликты
Почему важно: Проектирование требует творчества и фокуса. Токсичная среда убивает оба.
5. Проекты с нечёткими требованиями
Признаки:
- Требования меняются каждый день
- Нет спецификаций или документации
- "Сделай так, как я скажу по звонку"
- Постоянные переделки
Лучший способ работать:
// Документированные требования
// feature_list_requirements.md:
// 1. Показывать 50 элементов на экране
// 2. Поддерживать фильтрацию по статусу
// 3. Кэшировать данные на 1 час
// 4. Offline режим
6. Проекты с невозможными сроками
Неуважительные требования:
- "Сделай MVP за неделю" (для сложного приложения)
- Переоценка возможностей платформы Flutter
- Обещание фич, которые невозможны технически
- Постоянная спешка без причины
Мой принцип: Лучше отложить релиз на 2 недели, чем выпустить крахящееся приложение.
7. Проекты, где не ценят качество
Признаки отсутствия ценности качества:
- Code review поверхностный
- Merge любого кода без стандартов
- Performance не важен
- Безопасность как afterthought
- Нет design system'а
// Плохо: нет стандартов
Widget button1 = Container(
padding: EdgeInsets.all(8),
color: Colors.blue,
child: Text('OK'),
);
Widget button2 = Container(
padding: EdgeInsets.all(7), // Другой padding!
color: Color(0xFF0000FF), // Другой синий!
child: Text('OK'),
);
// Хорошо: design system с компонентами
PrimaryButton(label: 'OK')
SecondaryButton(label: 'Cancel')
8. Проекты без возможности роста
Когда я не вижу перспективы:
- Junior team без менторов
- Нет возможности изучать новые технологии
- Стек технологий устаревший (Xamarin, React Native 0.50)
- Отсутствие профессионального развития
Что я хочу:
- Работать с людьми, которые знают больше меня в чём-то
- Расширять скиллсет каждый год
- Изучать новые архитектурные паттерны
- Менторить junior разработчиков
9. Проекты с плохой инфраструктурой
Технические боли:
- Build занимает 30+ минут
- Нет автоматизации
- Ручной deploy в production
- Нет мониторинга и логирования
- Нет infrastructure as code
10. Проекты, нарушающие этику
Я не буду работать на:
- Финансовые пирамиды
- Азартные игры (gambling)
- Обман пользователей
- Приложения с predatory monetization
- Нарушение privacy пользователей
Мой принцип: Профессиональная репутация дороже любых денег.
Что я ИЩУ в проектах
Позитивные критерии:
✅ Технически сильная команда
- Senior разработчики, которых я уважаю
- Code review культура
- Постоянное обучение
✅ Понятные бизнес-цели
- Ясное видение продукта
- Разумные сроки
- Уважение к техническим ограничениям
✅ Хорошая инфраструктура
- CI/CD pipeline
- Мониторинг и логирование
- Быстрая feedback loop
✅ Здоровая команда
- Балансированная работа
- Уважение к опыту
- Возможность роста
✅ Интересные задачи
- Технические вызовы
- Оптимизация performance
- Масштабируемые архитектуры
- Нестандартные решения
Заключение
Я не ищу идеальный проект, но я знаю, что плохой проект хуже, чем нет проекта. За 10+ лет я видел, что выбор проекта и команды напрямую влияет на:
- Качество жизни
- Скорость карьерного роста
- Техническое мастерство
- Психологическое благополучие
Поэтому я выбираю проекты, где могу расти, создавать качественный код и работать с уважаемыми профессионалами.