Sobes.tech
Senior

Der Produktmanager bittet, innerhalb eines Monats eine Funktion zu erstellen: Falls in Sankt Petersburg keine Wohnungen für die Mai-Besichtigungen vorhanden sind, ähnliche Optionen in den Nachbarstädten (Vyborg, Kronstadt) anzuzeigen. Keine Analytik, keine Spezifikationen. Beschreibe die Schritte vom Gespräch bis zum ersten Commit.

sobes.tech KI

Antwort von AI

  1. Уточнение требований: созвониться с продакт-менеджером, чтобы понять бизнес-цель, критерии похожести квартир, список соседних городов, при каких условиях показывать альтернативы.

  2. Анализ данных: проверить, есть ли данные по квартирам в соседних городах, как они хранятся, как быстро можно получить список квартир.

  3. Определение критериев похожести: обсудить с продактом и, возможно, с командой, что считать похожими вариантами (цена, район, тип жилья).

  4. Проектирование решения: на основе требований спроектировать логику — при отсутствии квартир в Питере на выбранные даты показывать альтернативы из соседних городов.

  5. Техническое задание: оформить краткое ТЗ для команды разработки, согласовать с продактом.

  6. Оценка и планирование: оценить объем работы, разбить на задачи, определить приоритеты.

  7. Подготовка окружения: настроить ветку в репозитории, подготовить необходимые инструменты.

  8. Реализация: написать код, покрыть тестами, сделать первый коммит.

Примерный код на Go для проверки наличия квартир и выбора альтернатив:

func GetAvailableApartments(city string, date time.Time) []Apartment {
    apartments := fetchApartments(city, date)
    if len(apartments) == 0 && city == "Saint Petersburg" {
        neighbors := []string{"Vyborg", "Kronstadt"}
        for _, c := range neighbors {
            apartments = fetchApartments(c, date)
            if len(apartments) > 0 {
                break
            }
        }
    }
    return apartments
}

Этот код — лишь пример логики, детали зависят от архитектуры и данных.