Приведи пример своей ошибки на прошлом проекте

«Приведи пример своей ошибки на прошлом проекте» — вопрос из категории Софт-скиллы, который задают на 27% собеседований Системный Аналитик. Ниже — развёрнутый пример ответа, который можно адаптировать под свой опыт.

Ответ

На одном из проектов я упустил важный нюанс при проектировании API для интеграции с платежной системой. В требованиях было указано, что система должна поддерживать возвраты платежей, но я не учёл сценарий частичного возврата.

В результате пришлось дорабатывать API уже на этапе разработки, что привело к задержке релиза. Ошибка была в недостаточно детальном анализе бизнес-процессов.

Пример кода (изначальный вариант):

class PaymentService:
    def refund(self, payment_id: str, amount: float):
        # Только полный возврат
        if amount != self.get_payment_amount(payment_id):
            raise ValueError("Only full refunds supported")

Исправленный вариант:

class PaymentService:
    def refund(self, payment_id: str, amount: float):
        if amount <= 0 or amount > self.get_payment_amount(payment_id):
            raise ValueError("Invalid refund amount")
        # Логика частичного возврата

Вывод: теперь всегда уточняю edge-cases и неочевидные сценарии у заказчика.