Войти

Или войди с помощью

Dev Story Кредитный калькулятор. История банковского айтишника

Информатор avatar |
Кредитный калькулятор. История банковского айтишника

Данная программа действительно является всего лишь калькулятором и не аффилирована ни с одним банком.

ТЕКСТ: ДМИТРИЙ ТАЧКОВ. Как и многие жители России, я являюсь обладателем кредита в некоем банке. Мне неудобно было каждый раз заглядывать в график и заходить в Телебанк, проверяя, сколько я должен по кредиту или искать кредитный калькулятор в интернете.

Перебрав множество программ в App Store, я не нашел ни одной программы, которую я бы хотел купить. Все бесплатные программы (порядка 20 программ), которые я просмотрел и попробовал, имели либо убогий пользовательский интерфейс, либо рассчитывали данные неверно. Я говорю о приложениях для iPad. Нормального расчета графика платежей, который бы совпадал с графиком, выданным мне банком, я вообще не нашел. Я скачал один из платных кредитных калькуляторов, поведясь на красивый пользовательский интерфейс. Однако, при первом использовании скачанный калькулятор крешнул 10 раз. И это кредитный калькулятор, который находится в топе финансовых приложений по США! Когда я поворачивал свой iPad, купленный калькулятор менял ориентацию с книжной на альбомную, однако при повторном повороте обратно возвращаться отказывалась. Описав все это в отзывах купленной программе, я попытался вернуть сие чудо обратно разработчику и получить деньги обратно.

Я решил сделать удобное приложение, которое было бы всегда под рукой на моем iPad. Запустив приложение, я всегда смог бы узнать, сколько я должен по текущему кредиту и сколько еще осталось платить.

Так родилась идея создать приложение «Кредитный калькулятор» для iPad.

История создания программы

Немного о себе. Я инженер по тестированию программного обеспечения. По роду работы я тестировал достаточно большое количество программ для iOS и Android. Три года я работал в различных банках в качестве инженера по тестированию программного обеспечения. Я тестировал автоматизированные банковские системы, которые рассчитывают кредиты, депозиты, платежи, комиссии… Область кредитов была для меня достаточно знакомой.

С одной стороны, я хотел сделать качественный продукт, лишенный ошибок всех тех приложений, которые я тестировал и использовал ранее. Я считал, что самое главное в такой программе – достоверность расчетов и простота. Про достоверность расчетов я расскажу немного позднее.

С другой стороны, я хотел сделать в приложении то, чего не хватает мне, как заемщику. Первоначально у меня был бумажный вариант графика из банка. На первой странице были указаны сумма, срок, ставка. Я хотел полностью повторить бумажный график в своем кредитном калькуляторе. Вот как я представлял себе работу приложения: Я беру в руки график, ввожу эти данные и нажимаю рассчитать. Это все что мне нужно! Далее я просто сохраняю результат расчета и возвращаюсь к нему когда хочу! Без каких либо бумажных вариантов графика я имею под рукой информацию о моем кредите.

Итак, я поставил себе цель: сделать качественное приложение с минимальными затратами и в кратчайшие сроки. Этими идеями я вооружился и отправился в бой на сайт free-lance. Сделав ТЗ, я опубликовал проект по созданию дизайна для моего приложения. Первоначально я хотел получить дизайн за 5000 рублей. Но опубликовав проект, я получил ценник от 10 000 до 30 000 рублей за дизайн.

Получив отклики на свой проект, я выбрал дизайнера, работы которого мне понравились более всего. Внес предоплату и в бой. По срокам определились – неделя. Однако тут я совершил ошибку. Я написал ТЗ, но ТЗ написал для программистов. Надо было писать ТЗ и для дизайнера, подробно описав, что я хочу! Нужно было сделать макеты. В итоге, разработка дизайна заняла целых две недели, мне каждый раз приходилось объяснять дизайнеру, что не так и как я себе представляю ту или иную форму.

И снова в бой, ищем разработчиков для моего приложения. Снова публикую проект на сайте free-lance. Ценник на разработку – 30000 рублей за проект. Поймите правильно, я планировал, что разработка займет порядка 2-3 недель. В ТЗ было не более 10 страниц.

Я хотел найти разработчиков не из Москвы, с ценой 300-400 рублей в час. Однако, нормальных откликов я не получил. Пришлось поднять цену проекта до 45 000 рублей(400-500 рублей в час). Тут уже удалось получить адекватные отклики и найти адекватных(как мне казалось) исполнителей. Для проведения работ и регистрации ошибок я развернул самый простейший багтрекер – Мантис.

Работа закипела, кое-что я не учел в ТЗ. К примеру, я хотел получить функционал оповещений об очередном платеже. Однако, как оказалось , чтобы этот функционал был реализован, нужна серверная часть. Он был заменен другим функционалом.

После нескольких месяцев кропотливой разработки и консультаций проект перешел на финальную стадию – тестирование. Тут уж мне удалось разгуляться, зарегистрировав более сотни ошибок. Некоторые ошибки было достаточно сложно отловить. К примеру, чего стоит ошибка:

Нужно добиться состояния когда остался номер кредита в поле ввода после сброса

Переключатель запрос сохранения перед сбросом должен быть включен

Работать нужно только на первой форме.

1. Ввести сумму, срок, ставку и нажать сохранить

2. Удалить значение из поля срок и нажать сброс – да. Закрыть сообщения

3. Снова ввести параметры кредита и нажать сохранить.- закрыть сообщение

4. Нажать сброс – да – номер кредита останется введенным

Нажать на вкладку настройки – приложение упало.

Эта ошибка была достаточно критичной, потому что после нее приложение начинало постоянно вылетать при переходе на вкладку настройки. Эту ошибку я искал целый час и даже заснял видеоописание ошибки.

Параллельно велась локализация приложения и разработка скриншотов. Скриншоты я попросил сделать того же дизайнера, который делал основной дизайн. По поводу локализации снова пришлось обращаться на free-lance. Тут цены меня не порадовали. Цены на английский и немецкий в среднем 200-300 рублей за 1000 символов. Что касается японского – от 300-400 рублей за 1000 символов. В итоге пришлось добавить только немецкий и английский язык. Локализацию на украинский мне сделал дизайнер, за что ему отдельное спасибо. На японский язык я переводить не стал, потому что не могу проверить качество перевода. Возможно, я сделаю это в будущем.

Вскоре все найденные мной ошибки были исправлены, моя мечта сбылась – приложение в App Store.

Работа программы

Размышляя, как должна работать программа, я рассуждал так: Первый экран программы должен повторять первую страницу моего графика платежей. Я задаю параметры кредита – сумму, процент, срок, метод расчета и нажимаю рассчитать и вижу результат расчета на своем экране. Так работает большинство кредитных калькуляторов, и это будет привычно пользователю. В итоге появился вот такой замечательный экран:

На экране все достаточно просто – задаем сумму, ставку и срок и нажимаем рассчитать.

Получаем данные расчета внизу главного экрана – текущий платеж и сумму процентов, выплаченных банку за весь срок кредита.

Я посмотрел достаточно большое количество программ и отзывов к ним. В итоге я добавил возможность задания метода расчета – дифференцированных и аннуитетных платежей, которого нет практически ни в одном аналоге.

Задание суммы я тоже постарался сделать более удобным в виде аналогового ползунка.

Первая половина ползунка – возможность задания суммы от 0 до 10 млн – наиболее популярная сумма кредита на жилье, обладателем кредита на которое я являюсь)).

Также я добавил переключатель «Первый платеж только проценты». Это добавило гибкости при расчете кредита для моего калькулятора. Когда я начал разрабатывать программу, я открыл свой график и обнаружил, что первый платеж – не аннуитетный платеж. Как оказалось, бывает и такое. Это происходит, когда дата выдачи кредита не совпадает с датой первого платежа. Я просто должен заплатить банку процент за использование его денег за несколько дней. Обычно все формулы для расчета пишутся в кредитном договоре, исходя из которого и рассчитывается первый платеж.

Фишка приложения

Используя множество приложений, я пришел к выводу, что приложение должно иметь красивый дизайн и иметь то, что отличает данное приложение от других приложений, то бишь так называемую фишку. Для меня этой фишкой стали сообщения пользователю при ошибках и подсказки.

Я сделал сообщение в виде предупреждений с отпечатками пальца. По задумке, чтобы убрать сообщение – пользователь должен просто нажать по сообщению пальцем. На каждой из форм предусмотрена подсказка в виде данного сообщения. При нажатии на знак вопроса в левом верхнем углу экрана появляется подсказка.

График платежей

График платежей – тут я постарался, чтобы получившийся график был максимально приближен к моему реальному графику:

Вот как я себе представлял график:

  1. График должен повторять тот бумажный график, который дали мне в банке.
  2. Сколько нужно заплатить в текущем месяце? График должен отвечать на данный вопрос. Я не должен листать график в поисках текущего платежа. Я сразу должен видеть текущий платеж. Для этого я сделал стрелку указатель текущего платежа и автоматический переход к нему при просмотре графика.
  3. Приходится ли дата следующего платежа на выходной? Если платеж приходится на выходной, то можно опоздать с платежом и получить просрочку. Для этого выходные дни обозначены на графике платежей красной звездочкой. В выходные платить кредит нельзя, и пользователь должен быть предупрежден. Я специально не поставил общепринятые праздники, потому что приложением будут пользоваться не только жители России.
  4. Были ли досрочные погашения? Как изменился платеж по кредиту после них? Для этого, те месяца, в которых были досрочные погашения или иные изменения, я выделил светло синим фоном.

Досрочные погашения и экономия по кредиту.

Все в нашем мире меняется и кредит также вещь непостоянная. Условия кредита могу измениться. Что может произойти с кредитом, когда я плачу кредит? Я задался этим вопросом и попытался найти ответ исходя из своего опыта плательщика:

  1. Может измениться процентная ставка. К примеру, у меня была сначала 14 процентов, потом стала 12.
  2. Может измениться сумма кредита. Я могу вносить деньги досрочно.
  3. Существуют варианты, когда при внесении дополнительного платежа уменьшается срок кредита, при этом сумма аннуитетного платежа остается такой же

В случае функционала досрочных погашений для меня было важно понимать, сколько я экономлю или могу сэкономить. Для этого для каждого досрочного погашения реализован расчет показателя «экономия». Данный показатель позволяет понять, сколько можно сэкономить, сделав досрочный платеж по кредиту в конкретную дату.

Данный показатель автоматически рассчитывается при добавлении досрочного погашения.

Досрочное погашения на 200 тыс. рублей в данном примере позволило сэкономить примерно 110 тыс. рублей.

Достоверность расчета

При расчете использованы стандартные формулы для расчета аннуитетных и дифференцированных платежей.

Правильность расчета данных я проверял по своему графику платежей, который мне предоставил банк ВТБ24, а также по графикам друзей, у которых есть кредиты.

К сожалению, банки иногда по-разному считают кредит и разобраться в графике платежей достаточно трудно. Иногда банки сами ошибаются, рассчитывая неверную сумму очередного платежа. Банки используют программное обеспечение, которое также не лишено ошибок. Наличие праздников в текущем месяце также может ввести в заблуждение заемщика и повлиять на правильность расчета.

К примеру, я взял у одного из друзей график платежей по автокредиту, однако там Сбербанк взял и округлил платеж в погашение суммы основного до десятков(рассчитываемое значение – 1667.33, а в графике 16670).

Хочу отметить, что производилась сверка расчетов с официальным кредитным калькулятором, опубликованным на сайте Сбербанка. При расчете тестового примера разница между расчетами моего кредитного калькулятора и калькулятора Сбербанка составила 2 рубля при расчете кредита на 20 лет. Тут можно отметить, что разница может быть связана с тем, что кредитный калькулятор Сбербанка рассчитывает платеж без учета даты погашения.

Развитие приложения или что дальше?

Сейчас, если бы я находился на начале пути, я сделал бы все немного по-другому. Я бы поменял немного дизайн – убрал список кредитов с вкладки настройки. Я бы сделал список кредитов в виде панели слева, как это сделано в DropBox. Теперь это в будущем.

Когда я работал в одном из крупных банков России в качестве инженера по тестированию, за все функции расчета кредита отвечала автоматизированная банковская система. В ней реализованы все функции по расчету как ипотечного кредита, так и других типов кредита. Естественно мое приложение лишь отчасти повторяет функционал банковской системы.

Если задуматься о развитии приложения, я бы добавил:

1. Добавить реализацию приложения для iPhone.

2. Добавить альбомную ориентацию.

3. Сравнение двух возможных вариантов кредита. Какой кредит выгоднее и насколько?

4. Графическое представление графика платежей и сравнения 2х кредитов.

5. Интеграция с iCloud.

6. Реструктуризация кредита.

7. Расчет налогового вычета по кредиту.

8. Комиссии, страховки и др. дополнительные траты, которые могут быть в кредите.

9. Календарь праздников – в каждой стране праздничные дни разные и я мог бы отмечать их на графике платежей в соответствии с календарем

10. Реализацию уведомлений о предстоящих платежах с помощью оповещений.

Я первоначально хотел, чтобы этот функционал был разработан. Однако, как оказалось, данный функционал требует реализации серверной части, что увеличило бы стоимость разработки приложения в разы.

Но все это в будущем, и это уже новый проект с новым дизайном, сроками, исполнителями и ошибками. Что из этого будет реализовано, покажут отзывы пользователей о программе. Я не хотел бы делать программу универсальной или сборником разных калькуляторов – калькулятором кредитов, депозитов…. Это должен быть простой кредитный калькулятор и он должен считать кредиты хорошо.

Страница приложения: loancalc

iPad: $2.99 [iTunes link]

Я буду рад любым отзывам и предложениям по адресу dtachkov (sobaka) mail.ru

Данная история опубликована в рамках рубрики Developer Story, где разработчики делятся секретами своей внутренней кухни.
64
undefined
iPhones.ru
Данная программа действительно является всего лишь калькулятором и не аффилирована ни с одним банком. ТЕКСТ: ДМИТРИЙ ТАЧКОВ. Как и многие жители России, я являюсь обладателем кредита в некоем банке. Мне неудобно было каждый раз заглядывать в график и заходить в Телебанк, проверяя, сколько я должен по кредиту или искать кредитный калькулятор в интернете. Перебрав множество...

Войди и оставь комментарий

Или войди с помощью

<- Назад Забыли пароль? Войти
  1. cd_racer avatar
    cd_racer 30 июля 2012
    0

    По-моему классное русскоязычное приложение. Маленький комментарий насчет экономии – момент тонкий, так как зависит от ставок по кредиту, рыночных и инфляции. Иногда досрочно погасив часть кредита, по факту можно оказаться в минусе – потраченные сейчас 200к рублей выйдут ценнее, нежели сэкономленные за весь оставшийся период выплат (т.е. сегодня смогу купить Ладу на эти деньги, а вот к моменту окончания выплат – уже нет). Но это так, особенности арифметики – сам тоже немного повернут на оценке кредитов.

    Повторюсь, по описанию программка прикольная, заточена под нашу действительность, так держать!

    dtachkov avatar
    dtachkov30 июля 2012
    0

    @cd_racer, Спасибо за комментарий.
    Гасить или нет кредит, решает каждый сам.
    Действительно, иногда деньги лучше потратить, чем погасить кредит. К примеру, выпустить новую программу для Ipad))

    cd_racer avatar
    cd_racer30 июля 2012
    0

    @dtachkov, ну я тут скорее на арифметику упирал. Но, согласен, если денежный поток от написания перекроет денежный поток от погашения (приведенная стоимость), то просто нужно для iPad писать :)

    Войди на сайт, чтобы ответить
    Ответить
  2. smirnov avatar
    smirnov 30 июля 2012
    0

    хорошее приложение. сколько Вы уже заработали?

    Кстати, по поводу расхождения платежей между графиками банков и теми, что в приложении. Это может быть связано с тем, что при расчете реального кредита учитывается такое понятие как ПСК (Полная Стоимость Кредита) она же Эффективная Процентная Ставка. Следует отличать её от Годовой Процентной Ставки, тк она включает в себя дополнительные затраты по обеспечению того или иного кредита (документооборот, зарплату специалиста и тд)

    Но приложение не станет менее полезным из-за этого расхождения. Банковские манагеры всегда ищут нормальный калькулятор под рукой, чтобы оперативно посчитать для клиента приблизительный платеж по кредиту. На андроиде куча таких приложений.

    Будет ли данная программа реализована на айфоне?? Мне она нужна =)

    dtachkov avatar
    dtachkov30 июля 2012
    0

    @smirnov, Добрый день, будет, но со временем.
    Сейчас я собираю список доработок, что по мнению пользователей нужнее всего.

    cd_racer avatar
    cd_racer30 июля 2012
    0

    @smirnov, ПСК обычно на другом выезжает – доп. комиссии (единовременные, ежемесячные), которые. всегда входят в график платежей. Часто еще отличие бывает из-за выбора:
    1. Кол-ва дней в году (365 или фактически).
    2. Кол-ва дней в месяце (тоже фиксированное или фактическое).
    3. Даты очередного платежа (например, приходится на субботу, переносится на вторник => кол-во дней в прошедшем платежном периоде увеличивается).

    cd_racer avatar
    cd_racer30 июля 2012
    0

    @cd_racer, пардон, очепчтка. Конечно же комиссии не всегда входят в график платежей, единовременные и подавно.

    Войди на сайт, чтобы ответить
    Ответить
  3. Артур Малосиев avatar
    Артур Малосиев 30 июля 2012
    0

    Кто-нибудь может без банковских терминов объяснить, в чем плюсы и минусы аннуитетного платежа и дифференцированного? Например, данный калькулятор показывает, что при втором методе оплаты переплата банку ВСЕГДА меньше, чем в первом. Зачем тогда нужен аннуитетный?

    dtachkov avatar
    dtachkov30 июля 2012
    0

    @Артур Малосиев, Довольно странно, как вы считали?
    Если взять платеж 129000
    12 мес, 12 процентов, то переплата банку в случае аннуитетного платежа -8525,56
    В случае дифференцированного – 8385
    Дифференцированные выгоднее))

    cd_racer avatar
    cd_racer30 июля 2012
    0

    @dtachkov, переплата не показатель – показателем будет текущая стоимость денежного потока. Для банка она зависит от инфляции и ставки по кредиту, для заемщика тоже. Выгода у каждого наоборот (см. пост ниже с точки зрения заемщика).

    Правильнее вообще не на переплаты смотреть, а на эффективную ставку (особенно для крупных и длинных кредитов), ибо единовременная комиссия за выдачу, например, может существенно подвинуть яашу весов, а переплата будет ок.

    Dukhanin.Egor avatar
    Dukhanin.Egor31 июля 2012
    0

    @dtachkov, мне кажется Артур это и спросил. При дифференцированном платеже переплата меньше чем при аннуитетом (что и показывает ваш пример). Хотя по тексту ответ проскакивал.

    cd_racer avatar
    cd_racer30 июля 2012
    0

    @Артур Малосиев, зависит от инфляции:
    При равных ставках по кредиту с дифф. и аннуитетом
    1. По аннуитету ежемесячный платеж меньше => больше денег остается на текущее потребление => сейчас можно больше купить товара (кроссовок, айфонов, табуреток и т.п., сгонять в Тайланд). Если инфляция выше ставки по кредиту, то аннуитет выгоднее (экономию по дифф. скушает инфляция).
    2. По дифф. платится усновная сумма долга, долг быстро убывает, платеж уменьшается, появляется больше денег на траты потом => когда инфляция меньше ставки по кредиту, то дифф. выгоднее, так как будущие выплаты не обесценятся так быстро и экономия реализуется в большее колв-во товара по сравнению с аннутитетом.

    Постарался попроще.

    Артур Малосиев avatar
    0

    @cd_racer, спасибо, уже понятней.

    По статистике больше 50% заемщиков выплачивают кредиты досрочно в первые 5 лет. В этом случае ауннуитет выгодней, так?

    cd_racer avatar
    cd_racer30 июля 2012
    0

    @Артур Малосиев, досрочность погашения не влияет, как это ни странно. Просто, если цены еле ползут – то аннуитет выгоднее гасить досрочно, а если несутся галопом – пусть его.

    P.S. Сам удивился – хотя по смыслу и говорят, что по аннуитету сначала проценты, потом долг, но это упрощенное утверждение. Деньги по аннуитету потом (не важно, как быстро они будут выплачены), продисконтированные на ставку по кредиту (это как депозит наоборот) всегда равны его текущей величине. И тут гаси досрочно, не гаси – стоимость кредита (ставка) не поменяется.

    Войди на сайт, чтобы ответить
    Ответить
Помни о правилах — если начал оффтопить, то не удивляйся потом.

Нашли орфографическую ошибку в новости?

Выделите ее мышью и нажмите Ctrl+Enter.