кипр
Система управления email рассылками для внутреннего использования
Общение между сервисами с помощью rest api.
Используемые технологии:
frontend: vue+nuxt
backend: golang + restful(rs layer)
websockets - интерактивное наблюдение за процессом рассылки, установкой серверов, обновление логов.
letsencrypt(acme library) - быстрое подключение новых серверов с редиректами и трекингом, получение и обновление сертификатов.
mongodb - хранение логов, конфигов, отладочной информации.
postgres - хранение баз пользователей, подписки, отписки, аккаунты. Основная бд.
redis - побочное использование для неважного общения между сервисами передача данных с помощью pub/sub, хранение некоторых настроек.
smtp - свои сервера, возможность отключения очередей, чтобы контроллировать ответы от почтовиков о подозрительных письмах, и быстрее реагировать на блокировку спама.
imap - возможность администрировать свои корпоративные аккаунты, разные корпоративные аккаунты для разных стран получателей. Проверка служебных писем, жалоб, ответов клиентов.
dkim, dmark, spf - генерация и автоматическая настройка серверов новых клиентов. Возможно использовать свои сервера, но с нашими получаем лучшую обратную связь и настройки.
chromedp, selenium - тесты своей защиты от ботов. Разеделение трекинга пользователей и ботов имитирующих простых пользователей. Тестирование предотвращения фрода.
clickhouse - сбор статистики по кликам и открытиям писем. До анализа и разбора данных не добрались.
Разработка ПО для автоматической торговли на бирже криптовалют. Арбитраж, hst.
Используемый язык: golang.
Основная цель: максимально быстро делать расчеты и обновлять данные для расчетов, успевать покупать быстрее других.
Используемые инструменты: websockets, easyjson, gogoprototype, redis, mysql, map.sync, lock, telegram bot api, lz4, msgp, mongodb, postgres.
Работа с внешними апи, реверс инжиниринг не документированных апи, эмуляция запросов web, подключение к недокументированным сокетам.
Используемые биржи: livecoin, coinexchange, kukoin, yobit, hitbtc, cryptopia, ccex, wex, cex.
Частичное покрытие тестами, множество benchmarks.
Достижения:
В рамках кампании велась разработка своего контракта для проведения ICO
Контракт ICO:
Были выпущены токены для продажи.
Использовалось 3 этапа продажи, с разными ценами.
Прописаны правила:
Передачи токенов между участниками
Лимиты продажи
Блокировка основных средств на счетах по истечению времени.
SmartLottery:
Криптолотерея по образу столото.
Возможность приобрести билет за эфир
Ежедневное проведение лотереи расчет выигрышей на стороне эфир контракта.
Выплата с помощью правил контракта без использования ручной или серверной обработки операции.
Прописанные правила в контракте эфира:
Разработка и поддержка административной панели для рекламного агрегатора dsp.
Разработка - backend, руководство и формирование задач - frontend.
Используемые технологии:
backend: python3, django, postgresql, aerospike, mongodb, redis, rabbitmq, verticadb, clickhouse db.
frontend: angular.
Достижения: По приходу в проект, покрытие 100% кода тестами. Интеграция с google ad sense api. Интеграция с платежной системой по картам visa. Расширение функционала. Четкая постановка задач, с детальным описанием требований и деталей, контроль за исполнением. Внедрение ci, jenkins. Руководство командой из трех человек. Четкое соблюдение требований проект менеджера, соблюдение сроков и релизов.
Разработка портала отзывов и обзоров от экспертов на товары.
Создание проекта с нуля.
Symfony3, 80% покрытие кода тестами. Внедрение непрерывной интеграции. Настройка jenkins.
Настройка sphinx. Строгое следование стандартам симфони при разработке.
Реализация чата с использование комбинации шифрования AES + RSA.
Возможность переписываться между участниками через сервер, без возможности админам прочитать переписку собеседников.
1. Стандартная регистрация авторизация.
2. Создание приватного и публичного ключа на основе секретного слова.
3. Сохранение публичного ключа на сервере.
4. Создание комнат для общения.
5. Обмен aes ключами между участниками, через взаимное шифрование публичными ключами.
6. Шифровка, расшифровка сообщений на стороне клиента.
7. Возможность работы в сети ТОР. Генерация красивого домена onion.
8. Статистика посещений, сохранение в отдельную базу данных.
При захвате базы злоумышленниками, данные не возможно прочитать без приватных ключей пользователей.
Используемые технологии: symfony2, postgres, sqlite3, tor, cryptico(js).
Участие в разработке портала информации.
1. Работа с шаблонами xsl.
2. Создание xsl шаблонов.
3. Передача переменных в шаблоны.
4. Обработка тегов, использование логики представления xsl.
5. Работа с циклами, выборка(choice), переменными, условиями.
6. Генерация xml с помощью xsl.
1. Регистрация, авторизация
2. Импорт школ с внешнего api
3. restful api для ios приложения.
4. Авторизация, регистрация через соц сети facebook, vk в restful api.
5. Просмотр, редактирование профиля.
6. Работа с изображениями, upload картинки профиля, обработка изображения.
7. Возврат нужных данных, использование фильтров в запросах. Добавление не стандартных фильтров.
8. Углубленная работа с сериализаторами данных, выполнение требований по усложнённому набору данных.
9. Редактирования сущностей через api, сохранение вложенных сущностей через один запрос. Редактирование нескольких сущностей через один запрос.
10. Использование прав доступа для возможности просматривать, редактировать записи.
11. Написание своих адаптеров и провайдеров для работы с соцсетями.
12. Статьи, новости, школы.
13. Главная страница, плиточная система. Группировка по столбцам и выбор размера плашек. Настройка через админку.
14. Push уведомления для ios. Настройка работы, установка сертификатов. Отправка по событиям и по крону.
15. Email уведомления, обратная связь.
16. Статистика посещаемости. Использование отдельной базы для хранения статистики.
17. Система вложенных комментариев.
18. Использование тегов для статей. Возможность голосования.
18. Настройка vps сервера. Бэкапы.
Используемые технологии: Django 1.8, postgres, sqlite3.
Разработка торговой площадки для проведения электронных аукционов, интеграция с ООС (общероссийский официальный сайт (Государственные закупки))
Используемые технологии: Zend framework, postgresql, extjs, xml.
Основная специализации - работа с ООС.
1. Изменение форм extjs, добавление валидаторов, изменение полей, использование условий для показа/скрытия дополнительных полей на форме. Динамически формы.
2. Создание системы отправки закупок на ООС. Формирование xml для извещений (более 10 типов извещений).
3. Модульная сборка xml для извещений. Фабрика для получения необходимого набора объектов. Интерфейсы для модулей xml.
4. Обработчики входящих xml с ООС. Интерфейс обработчика. Парсинг xml, выбор необходимого обработчика.
5. Тесты для обработчиков.
6. Так же реализовано формирование xml для протоколов. Использование фабрики. Сборка нужного объекта из мелких классов, отвечающий за свой кусок генерации xml. Решение проблемы с генерацией более 20 типов протоколов, с большим количеством пересекающихся кусков xml.
7. Работа со схемами xsd.
8. Создание своей схемы XSD. Проектирование api и формата xml для работы с внешним апи. Использование своей схемы xsd для требований к другой команде разработчиков, для возможности импорт закупок из внешней системы.
9. Модуль импорта закупок. Проверка xml по xsd схеме.
10. Использование xsl для преобразования xml.
11. Работа с отчетами, генерация docx, excel с помощью stimulsoft. Настройка отчетов через интерфейс и напрямую через файл настроек xml.
12. Анализ данных. Поиск багов, оптимизация.
13. Решение проблем с конкурирующими запросами на ООС.
14. Работа с тех.поддержкой ООС.
15. Разбиение больших файлов на несколько отдельных при отправке.
16. Написание анализатора данных на django 1.9. Формирование xml с помощью jinja шаблонизатора.
17. Актуализация формата отправляемых/получаемых данных, в соответствии с обновлением ООСа. Обновление версий.
18. Работа с ООС по ФЗ-44 и ФЗ-223. Использование криптопрокси. Использование протоколов AS2 и HTTPS.
19. Выяснение подробностей по ошибкам возвращаемых ООС. Выяснение правил отправки xml: ограничения на размер файлов, правила отправки изменений/отмены/нового извщеений. Выяснение общего сценария обработки xml и работы в личном кабинете ООС.
20. Обработка План-Графиков(2 типа), извещений(12 типов) о проведении электронных аукционов, протоколов(~20), заключение контрактов(~8), исполнение контрактов(~5).
Разработка приложения для поиска связей между агенствами и фотомоделями.
Стандартный функционал:
1. Авторизация через соцсети (facebook, twitter, ...)
2. Редактирование профиля.
3. Работа с картинками. Изменение размера картинок, предварительнная генерация иконок. Асинхронные задачи.
4. Поиск, фильтры, полнотекстовый поиск.
5. Автогенерируемая документация для api.
6. Реализован RESTFUL api.
7. Углубленная работа с сериализацией данных, использование не стандартных решений из-за особых требований к формату отдаваемых данных.
8. Функционал фолловеров.
9. Почтовые рассылки, уведомления. Push уведомления для ios через urbanairship.
10. Функциональные тесты, юнит тесты.
11. Фикстуры, миграции, тесты миграций. Автоматическая проверка бэкапов.
12. Автоматическая сборка проектов с помощью jenkins.
13. Prod, dev, test сервера, настройка актуализация, мониторинг.
Используемые технологии: symfony 2.4, mysql
Разработка приложения для кадрового агенства.
1. Регистрация, авторизация. Регистрация по приглашениям.
2. Создание редактирование удаление компаний.
3. Уведомления на почту при наступлении различных действий.
4. Создание вакансий, подбор кандидатов, назначение собеседующих, назначение собеседований.
5. Система оценок и отзывов по окончанию собеседования.
6. Система уведомлений о предстоящих и завершенных собеседованиях.
7. Система уведомлений на почту, по событиям и по крону.
8. Настройка уведомлений.
9. Работа с изображениями. Заполнение профиля.
10. Реализация dashboard с отображением актуальной информации. По предстоящим интервью, созданным вакансиям, компаниям, кандидатам и участникам.
11. Система acl для контроля прав доступа.
Используемые технологии: python3, django 1.7, mysql
Разработка rest api для гороскопа:
1. rest api
2. Импорт данных с внешнего источника. Парсинг html с помощью beautifulsoap.
3. стандартный crud для показа информации по знакам зодиака.
4. Простейший механизм для показа рекламы и баннеров в соответствии с контекстом предсказания по знаку зодиака.
5. Админка.
Backend разработка для iphone приложения.
Используемые технологии: django 1.7, sqlite3.
Участие в команде разработчиков в разработке стартапа Clothia.
3 программиста, 2 backend, 1 frontend. Через полгода стал ведущим разработчиком. Полное разделение backend и frontend обязанностей.
Используемые технологии: php, symfony 1.4, git, mysql(innoDB), memcached, rabbitMQ, sphinx, oauth, google api, facebook api, twitter api, xhproof, pinba, amazonS3, Rackspace files.
Написание api v2 для айпад приложения, использование oauth для авторизации.
Внедрение phpunit тестирования. Покрытие функциональными тестами api.
Парсер сайтов с использованием PHPQuery, для сбора названий и цен товаров.
Импорт контактов с помощью google api и facebook api.
Использование twitter api и facebook api, для отправки сообщений на стены пользователей через сервер.
Активность пользователей с группировкой. http://www.clothia.com/pivolan/activity
Поддержка и настройка серверов. Mysql (percona), настройка реплики. Настройка и установка окружения. Использование и настройка балансировщика нагрузки, распределение php обработки на несколько серверов. Асинхронные задачи.
Установка и настройка распределенной файловой системы glusterfs для хранения файлов.
Оптимизация запросов mysql.
Мониторинг активности серверов.
Работа в SAAS, использование amazon и rackspace хостингов.
использование php forks для распараллеливания обработки данных.
Участие в команде разработчиков в разработке стартапа - Социальной сети по интересам.
используемые технологии: php, hbase, svn, memcached, elastics, zendFramework, amazonS3.
Разработка функционала контроля доступа при обработке событий.
Внедрение phpunit тестирования.
Разработка архитектуры универсального хранилища файлов(статики).
подключение amazon store для хранения фотографий и статики на amazon.
Рефактор кода просмотра фотогалереи.
Участие в команде разработчиков в разработке стартапа. - Социальная сеть по мероприятиям.
Используемые технологии: php, symfony2, git, mongodb, doctrineMongo, elastics, phpunit, twig, amazonS3.
web админка для hbase
видео альбомы и парсинг видео с внешних ресурсов.
Функционал мероприятий.
Регистрация через социальные сети facebook, vkontakte, mailru, twitter.
Разрабтока системы кэширования запросов в БД. memcache + hbase. Основной функционал.
разработка базового ядра для системы рейтингов и репутации.
Фильтры поиска на главной странице сообщений в зависимости от интересов и рейтинга. (elastics)
Авто репостинг сообщения в социальные сети (javascript api) vkontakte, mail.ru, twitter, facebook.
Функционал привязки уже существующего аккаунта к внешним социальным сетям mailru, vk, fb, tw.
Разработка функционала рассылки новостей. Отложенная запись, планировщик задач. Проектирование архитекуры БД под задачу.
Разработка функционала импорта мероприятий из внешних источников. Парсинг других сайтов (phpQuery).
Общий механизм создания новостей. Отображение, обновление, создание, удаление.
Разработка функционала друзей. (Пригласить, отколнить, бан...)