Показ дописів із міткою XCode. Показати всі дописи
Показ дописів із міткою XCode. Показати всі дописи

Разработчик для iOS & Android, Киев, Украина

По сути:
Мне нравится разрабатывать приложения для мобильных систем. У меня хорошая подготовка: iOS, Android, web (для интеграции приложений между собой или другой системой(CRM, интернет магазин, бухгалтерия)). Быстро разбираюсь с библиотеками сторонних разработчиков и чужим кодом.

С 2010 года мною разработано более 20 мобильных приложений с "нуля" и добавил новые возможности более чем 15 приложениям.

Мои сильные стороны:
1. Интеграция технологий и разработка кроссплатформенных приложений.
2. Умею создавать приложения целиком: идея, документация, программирование, загрузка в сторы, сопровождение.
3. Большой опыт разработки и поддержки "Enterprise software" + взаимодействие с конечным пользователем.

Умею работать в команде с другими разработчиками и заниматься только своим участком разработки или работать на условиях контракта – разрабатывать приложение(я) для нужд компании.

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

Рассматриваю все варианты:
удаленно: на проект, фриланс.


Детально:
Большой опыт разработки приложений для мобильных Android устройств и iPhone .
- имиджевые (рекламные) и корпоративные приложения
- утилиты
- взаимодействие с сайтом
- решения для интернет магазинов и сервисов
- локализация приложений (перевод интерфейса навигации, адаптация дизайна, и т.д.)
- портирование из Android в iOS и из iOS в Android.

При необходимости возможна подготовка технической документации (постановки задачи и/или руководство пользователя).

Используемые технологии:
1. Геолокация, работа с картами
2. Интеграция с Интернет сервисами и библиотеками сторонних разработчиков (добавление статистики, рекламы, сканер и т.д.)
3. Разработка и интеграция сопутствующих вебсервисов с обменом данными на PHP + MySQL + JSON
4. Работа с локальными (встроенными базами данных): Core Data, SQLite

Мобильные платформы: iOS (Objective C) & Android (Java)
Вебсервисы (взаимодействие с Интернет): PHP + MySQL + JSON / XML
Обмен данными: JSON / Parse.com / XML / CSV / Excel
Third part API: Bluetooth Low Energy API, in-app purchase, AdMob, Google Analytics
Интеграция социальных сетей: Facebook / Twitter / VK.com / Google Plus
CMS: Wordpress / OpenCart / Custom CMS

Работаю с iOS с 2011 года.
Работаю с Android с 2010 года.
Вебтехнологии с 2000 года.
Работаю с базами данных с 1998 года.
Программирую вообще с 1996 года.

Навыки разработчика:
Разработка начальных требований, выполнение анализа требуемых изменений, проектирования ПО с использованием ООП, создание прототипа (только интерфейс, чтобы понять какой вид будет иметь приложение на устройстве)
Создание ПО – кодирование, первичное тестирование и отладка кода
Разработка сценариев тестирования и проведение комплексного тестирования ПО
Разработка документации разработчика и пользователя по реализованным функциям
Управление циклом разработки ПО от задумки до релиза.

English speaking, reading and writing.

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

Портфолио

Награды приложений

Клиенты

Многие приложения, в разработке которых я принимал участие, "закрыты" NDA.
Ниже печерень приложений с моей долей участия в разработке 100%. Обратите внимание на описание используемых технологий.

Готовые приложения в Google Play Market (доля в разработке 100%):
https://play.google.com/store/apps/details?id=org.peredovik.snakecharmer

Готовые приложения в AppStore (доля в разработке 100%):
https://itunes.apple.com/us/app/snake-charmer/id835922927

Подробное портфолио

Дополнительная информация - по запросу.

e-mail: vovan4u@ukr.net
skype: peredovik.propagandi

Портфолио



Приложения, которые были розданы для демонстрации владения навыков разработки.

Готовые приложения в AppStore (доля в разработке 100%):

https://itunes.apple.com/us/app/freelance-job-search/id1032986260?ls=1&mt=8
This app allows for user to get latest projects posted to UpWork.com . User can view detailed description of posted project. Projects can be sorted by user defined criteria’s. For bidding to projects user can tap button "Submit a proposal" to open project at UpWork.com or send project description with link at UpWork.com to email for further bidding. 
Это приложение позволяет сканировать и распознавать QR и штрих коды различных форматов. Отсканированный код сохраняется в приложении и доступен для отправки в аккаунт пользователя таких социальных сетей как Facebook, Twitter, VKontakte, Google Plus, а также электронной почтой.

Приложение “Я здесь” предназначено для личного трекинга передвижений и/или отправки своего местонахождения по СМС или электронной почте.
Текущие координаты отправляются виде ссылки на сайт Карты Гугл с текущими координатами.
Трекинг перемещений выгружается в формате KML и позволяет загружать журнал трекинга для просмотра в программу «Google Планета Земля».

Заклинатель Змей это динамичная аркада, в которой нужно собирать призы и при этом избегать касания стен и пересечения самой себя (кроме режима «Дзен»).

Готовые приложения в Google Play Market (доля в разработке 100%):
https://play.google.com/store/apps/details?id=org.peredovik.freelancejobsearch
Все знают, что сделав предложение по проекту первым, есть больше шансов получить заказ. При помощи этого мобильного приложения Вы всегда будете в курсе новых запросов клиентов и сможете раньше других сделать свое предложение. Приложение позволяет пользователю создавать свои фильтры проектов. 
 
Заклинатель Змей это динамичная аркада, в которой нужно собирать призы и при этом избегать касания стен и пересечения самой себя (кроме режима «Дзен»).

Это приложение позволяет сканировать и распознавать QR и штрих коды различных форматов. Отсканированный код сохраняется в приложении и доступен для отправки в аккаунт пользователя таких социальных сетей как Facebook, Twitter, VKontakte, Google Plus, а также электронной почтой.

Управление смартфоном через СМС команды: получить пропущенные звонки, последние 5 СМС, телефонную книгу. Если телефон утерян – удалить все данные. Работа с ФТП сервером и отправка почты из приложения.

Приложение “Я здесь” предназначено для личного трекинга передвижений и/или отправки своего местонахождения по СМС или электронной почте.
Текущие координаты отправляются виде ссылки на сайт Карты Гугл с текущими координатами.
Трекинг перемещений выгружается в формате KML и позволяет загружать журнал трекинга для просмотра в программу «Google Планета Земля».

Данный виджет позволяет видеть информацию о текущем состоянии батареи телефона или планшета. Показываются такие данные: уровень заряда, температура и вольтаж батареи.

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

Проверка номера купюры евро на соответствие алгоритмам генерации номеров.

Приложения закрытые «НДА», о которых я могу рассказать в общих чертах
1. Комплект приложений для работы с iBeacon (Bluetooth Smart Device): клиентское приложение для взаимодействия с устройством и приложение для администратора для программирования параметров устройства и добавления устройств в учетную систему (интеграция с Интернет). Приложения были созданы для работы в iOS (iPhone + iPad) и Android (телефоны + планшеты).
В приложениях был реализован двухсторонний обмен данными. Позже была добавлена возможность работы с устройствами с нестандартной прошивкой: на устройство отправлялись команды для выполнения.

2. Виджет «Часы» (Android)  – размешено в прошивке (предзагруженное) в линейке устройств: 3 смартфона + 1 планшет. 3 стрелки: часы, минутная, секундная. Размещение на рабочем столе и на экране блокировки. Реализованы алгоритмы энергосбережения.

3. Промо-приложение на Андроид для работы с биконами Estimote. В приложении выводились предложения для посетителей магазина. Интеграция с сайтом магазина.

4. Приложение (iOS + Android) для туристической компании: взаимодействие клиента компании с консьерж сервисом компании.

5. Доработка приложения по безопасности данных Android  устройства: создание процедур по сохранению и восстановлению таких данных Андроид смартфона: контакты, СМС, журнал звонков, фото и видео файлы.

6. Кастомный клиент для социальной сети YELP для iOS (iPhone + iPad): поиск контрагентов, группирование контрагентов, переписка, геолокация, интеграция с веб.

И много других приложений… в которых правился код, добавлялись некоторые возможности, однако, это были относительно типичные задачи, чтобы писать о каждой приложении отдельно:
- добавление статистики, в т.ч. и внутренней
- продажи внутри приложений
- интергация с Facebook, Twitter, GoogelPlus, LinkedIn
- замена компонентов сторонних разработчиков на оригинальные
- кастомизация элементов управления
- исправление ошибок работы приложения, доделывание приложений после других разработчиков
- и т.д.

Клиенты



Некоторые компании, для которых я работал.

Международные компании – работал с украинскими представительствами, официальными дилерами, филиалами:









Украинские предприятия:














Решение проблемы AppStore отклонил приложение

К сожалению иногда бывают ситуации когда iOS приложение отвергается редакторами AppStore.
Причины отказа можно условно разделить на рекламные, концептуальные и технические.

К рекламным причинам я отношу несоответствие приложения описанию, грамматические ошибки в описании и т.д.

К концептуальным причинам я отношу вопросы построения интерфейса приложения и сопутствующие используемые возможности операционной системы. Это все подробно рассмотрено в руководстве по созданию интерфейса приложения от Apple:
https://itunes.apple.com/ua/book/ios-human-interface-guidelines/id877942287?mt=11

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

Таким образом, если к Вашему приложению предъявлены концептуальные претензии есть 2 выхода:
1. Если можно исправить интерфейс, то исправляется интерфейс и другие замечания.
2. Если приложение очень большое или уже было несколько попыток публикации, то возможности приложения сокращаются и публикация выполняется в несколько этапов с добавлением необходимых фишек и фишечек. Это вызвано тем, что каждый раз приложение рассматривают разные модераторы и им видна история отказов.

Техническими причинами отказа в публикации являются такие:
1. Приложение «падает» и «зависает».
2. Не стандартный (неудобный, плохой, непривычный для иОС) интерфейс.
3. Приложение не готово, бета версия.
4. Несоответствие минимальной версии операционной системы и битности платформы бинарника.
5. Маленькие функциональные возможности приложения.

У меня есть положительный опыт «вытаскивания» приложений из отказов в публикации. Для этого делалось:
1. Приведение приложения в соответствие с требованиями к построению пользовательских интерфейсов.
2. Увеличение функциональных возможностей приложения
3. Исправление ошибок, изменение архитектуры приложения на соответствующую требованиям и рекомендациям Apple.

Для анализа Вашей конкретной ситуации мне понадобится:
1. Доступ к девелоперскому аккаунту
2. Исходники приложения
3. Список ближайших аналогов (не обязательно)

Стоимость первичного анализа Вашей конкретной ситуации составляет 50 USD. По факту анализа Вашей ситуации я предоставлю заключение с возможными вариантами преодоление возражений модераторов АппСтора.

Дополнительная информация по запросу на емейл vovan4u@ukr.net или  Skype: peredovik.propagandi

Исправление ошибок в мобильном приложении

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

Если разработчик Вашего приложения не доступен или не может исправить ошибку – предлагаю свои услуги по исправлению ошибок.

Мой опыт программирования составляет 18 лет, в т.ч. последние 5 для мобильных платформ iOS и Android.

Для себя классифицирую ошибки в приложениях на такие:
1. Несоответствие требованиям спецификации – самые относительно безобидные. Как правило вызваны невнимательностью разработчика и тестера на этапе проверки приложения и приемки работ. Проявляются как правило при первом открытии экрана приложения. Например: не заполненное поле либо в поле неправильное значение, отсутствие проверки действий пользователя или доступности соединения с Интернет.
2. Работа приложения не соответствует требованиям спецификации. Такие ошибки проявляются при выполнении определенных действий пользователя. Часто такие ошибки вызваны неправильной внутренней архитектурой приложения и ошибками в проектировании взаимодействия приложения с пользователем и/или другими сервисами. Например: автоматическая синхронизация данных приложения с сайтом происходит для всех видов данных одновременно как только появляется Интернет соединения, что приводит в снижению скорости передачи данных и «торможению» работы смартфона или планшета.
3. Ошибки в библиотеках сторонних разработчиков. Многие ленивые программисты, а чаще и малоопытные используют сторонние библиотеки для различных «спецэффектов» в приложении. Как правило, 80% используемых спецэффектов доступны и среди нативных(оригинальных, «родных», встроенных) элементов интерфейса среды для разработки приложения. Как показывает моя практика сторонние библиотеки приводят к неожиданным утечкам памяти и зависаниям приложения без видимых причин. Анализ сторонних библиотек показывает, что некоторые популярные обновляются каждые 3 дня, что говорит об отсутствии стабильной версии.
4. Утечки памяти. Как правило это еще один вид ошибок малоопытных программистов. Часто разработчики забывают освобождать объекты и при переходе на другие экраны приложения объекты продолжают «жить» и потреблять ресурсы. Т.е. в целом приложение работает, но при определенных данных оно может «вылетать», «зависать» и т.д. Иногда проявление таких ошибок в приложении результат использования библиотек сторонних разработчиков.
5. Выход новой версии операционной системы сопровождается депрекацией (прекращением поддержки) ряда команд и/или изменением набора параметров вызова команд в новой версии операционной системы. Фактически это приводит к тому, что приложение перестает работать: не открывается следующий экран, не обрабатывается нажатие на кнопку, сползают надписи и т.д.
6. Вылеты приложения по причине «недообработки» нестандартного значения переданного приложению. Другими словами случается маловероятная ситуация, которую упустил разработчик.
7. «Хвосты» старого кода которые не поддерживаются в новых версиях ОС по причине депрекации – очень характерно для иОС код для iOS версий 5 / 6 / 7 и 8, характерно для Андроид версий меньше 2.3, версий 2.3.*, версий для планшетов 3. 0 и версий 4.0+
8. Изменения в API и/или формата данных сервисов, с которыми происходит взаимодействие.

Для оценки стоимости работ по устранению «глюка» в приложении требуется:
1. Само приложение и исходный код приложения (последней версии).
2. Подробное описание действий для проявления глюка. Можно дополнительно снять на видео и закачать ролик на ютьюб.
3. Доступ к девелоперскому аккаунту (для iOS).

Стоимость диагностики(анализа) одной ошибки составляет 50 USD. Если ошибок для диагностики больше чем одна – будут скидки.

!!! Важно диагностируются только заявленные клиентом ошибки. Иногда бывают ситуации когда одна ошибка скрывает другую, например: не отображается экран 2. После исправления проблем с отображением экрана 2 оказывается, что в базе данных неправильные данные для вывода на экране 2.
В этом примере описаны 2 разные ошибки:
ошибка 1 (заявленная к диагностике) – отображение экрана
ошибка 2 (скрытая, выявленная после исправления ошибки 1) – неправильные данные в базе данных.

Примеры типовых решений:
1. Идеальный вариант - исправление ошибки путем написания правильного кода: полная инициализация класса/объекта, правильный вызов и освобождение и т.д. по стандартам как говорится.
2. Полная переделка проблемного кода – иногда переписать с нуля быстрее, чем пытаться править чужой глючащий код.
3. Ошибка в библиотеке сторонних разработчиков: либо обновление библиотеки до последней версии либо замена эффекта библиотеки нативными (родными) средствами среды ОС.

При исправлении ошибки я ориентируюсь на текущие версии релизов мобильных ОС для iOS это iOS 8.1.х для Андроид это версия 4 и старше.

Результат диагностики – предложение способа или нескольких способов исправления ошибки и ориентировочная стоимость исправления ошибки.

Оплата:
аванс 50% до начала работ по исправлению ошибки, остаток по факту после проверки.

Как результат исправления:
демонстрация работы приложения в режиме попытка вызвать глюк – приложение работает стабильно.

Могу снять видео на своем устройстве и разместить ролик на Youtube, также могу предоставить доступ к исправленной версии  приложения для тестирования на Вашем устройстве.

Присылайте Ваши запросы по е-мейл vovan4u@ukr.net или по Skype: peredovik.propagandi