Как стать автором
Обновить

Компания FUNCORP временно не ведёт блог на Хабре

Сначала показывать

Rx головного мозга

Время на прочтение13 мин
Количество просмотров11K

О том, как удобно писать на Rx, какие операторы и сущности в нём есть, как делать запросы в сеть и работать с многопоточностью, не писал разве что ленивый. Кто-то рассказывает, что можно «обмазаться» Rx-ом на всех уровнях архитектуры и приложение станет реактивным, а разработка — в разы быстрее. Но как только слова доходят до дела, то встаёт множество вопросов, как подружить Rx со спецификой UI и системными API и зачем нужен Rx, кроме как для многопоточности. В этой статье я хотел бы рассказать о нашем видении разработки в реактивном стиле и на реальных примерах показать, как он упрощает жизнь.

Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии19

MVP силами одного разработчика

Время на прочтение4 мин
Количество просмотров7.3K
При огромной конкуренции цифровых продуктов и высокой скорости запуска новых необходимо быстро и дёшево проверять жизнеспособность продуктовых идей. В этой статье я расскажу об опыте создания MVP собственными силами, т.е. фактически силами одного iOS-разработчика. О том, как я искал баланс при создании MVP, об инструментах, сложностях и их решении. Если вы  планируете воплотить в жизнь первые проекты в мобильной разработке или хотите добавить новую ветку функционала в уже существующий продукт, то эта статья точно для вас.

image
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии5

FunCorp ищет QA-инженеров: пройди интервью и получи оффер в тот же день

Время на прочтение3 мин
Количество просмотров5.7K
Даже на удалёнке FunCorp продолжает нанимать лучших из лучших. Поэтому мы запускаем FunCorp QArantine hiring event в онлайн-формате и ищем специалистов по ручному тестированию мобильных приложений и специалиста с большим опытом автоматизации тестирования мобильных приложений.


Всего голосов 21: ↑21 и ↓0+21
Комментарии5

Swift 5.2. Обзор всех изменений

Время на прочтение5 мин
Количество просмотров6.4K
В конце марта вышел релиз Swift 5.2 для Xcode 11.4. В нём улучшена диагностика ошибок, анализ зависимостей, расширен функционал SwiftPM. Обзор некоторых изменений уже был опубликован на Хабре, в этой же статье рассмотрена эволюция самого языка с возможными примерами использования.


 
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии10

Топ-10 мемов прошедшего десятилетия

Время на прочтение4 мин
Количество просмотров30K
Обычно мы рассказываем о том, что и как используем в своей работе над приложением iFunny. Но сегодня особенный день — 1 апреля, День смеха, и этот день мы считаем своим профессиональным праздником. Ведь мы «пилим» самое смешное из всех развлекательных приложений — приложение с мемами!



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

И сегодня мы предлагаем вспомнить, что породило огромное количество мемов и над чем больше всего смеялись в интернете за последнее десятилетие (подборка основана на рейтингах разных американских интернет-изданий, мы выбрали по одному из них за каждый год).
Много картинок
Всего голосов 90: ↑63 и ↓27+36
Комментарии34

[По докам] Flutter. Часть 5. Для Xamarin.Forms-разработчиков

Время на прочтение20 мин
Количество просмотров4.2K
Это заключительная часть лаконичной интерпретации документации по Flutter, которая будет полезна Xamarin.Forms-разработчикам. Учитывая текущую ситуацию, сейчас самое время изучать что-то новое! Под катом вы сможете найти для себя информацию, достаточную, чтобы оценить, стоит ли переходить с одного кросплатформенного фреймворка на другой и сколько времени это займёт.


Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии1

Как московский офис FunCorp перешёл на удалёнку за 1 день

Время на прочтение6 мин
Количество просмотров9.5K
16 марта московский офис FunCorp перешёл на удалённый режим работы. Как решились на этот шаг, какие риски закрыли и с какими сложностями столкнулись в первую неделю — делимся своим опытом в этой статье.



С чего всё началось


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

Через неделю стало понятно, что этих мер будет недостаточно, и мы начали готовиться к переходу на удалённую работу.
Читать дальше →
Всего голосов 37: ↑34 и ↓3+31
Комментарии23

Погружение в Charles Proxy

Время на прочтение11 мин
Количество просмотров72K

Привет, Хабр! Меня зовут Настя, я работаю в команде тестирования мобильных приложений компании FunСorp.


При приёмке задач мы уделяем большое внимание проверке клиент-серверного взаимодействия. Опыт проведения собеседований показывает, что новички в тестировании мобильных приложений ограничиваются интерфейсными проверками, упуская из виду то, что за каждым изменением интерфейса стоит отправка запроса к серверу и получение ответа от него. Здесь и возникает пространство для ошибок.


Если повезло, то кандидат знает о необходимости проверки сетевого взаимодействия, но, за редким исключением, его знания ограничены Rewrite или Breakpoints.


Сегодня я расскажу, с какими задачами сталкиваются тестировщики мобильных приложений в FunСorp и как в этом помогает Charles Proxy.

Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии21

Материалы FunCorp iOS meetup#2

Время на прочтение2 мин
Количество просмотров2.5K
15 февраля мы провели FunCorp iOS meetup#2, который по формату превратился в полноценную однодневную конференцию для iOS-разработчиков, с крутыми экспертами, викториной, мерчом и призами.



Изначально мы не стали ограничиваться какой-то одной темой, поэтому удалось собрать программу, интересную многим. С докладами выступили спикеры из FunCorp, Badoo, Raiffeisen Bank, Citymobil и Revolut. Мероприятие завершила дискуссия на тему «Что нужно iOS-разработчику, чтобы быть востребованным в 2020?».
Делимся подробностями, видео и слайдами.
Всего голосов 23: ↑23 и ↓0+23
Комментарии3

JavaScript tree shaking, like a pro

Время на прочтение5 мин
Количество просмотров14K
Это перевод статьи об оптимизации и уменьшении размера бандла приложения. Она хороша тем, что тут описаны best practices, советы, которых стоит придерживаться, чтобы тришейкинг работал и выкидывал неиспользуемый код из сборки. Она будет полезной многим, потому что сейчас все используют системы сборки, в которых «из коробки» есть тришейкинг. Но чтобы он работал правильно, нужно придерживаться принципов, описанных ниже.

image
Читать дальше →
Всего голосов 32: ↑32 и ↓0+32
Комментарии3

FunCode Backend Java/Kotlin Challenge: объявляем имена победителей

Время на прочтение2 мин
Количество просмотров6.3K


Всем привет! Целый месяц мы изучали работы участников конкурса. И честно сказать, получили массу удовольствия в процессе, причём дважды: сначала — читая ваш код и радуясь красивым архитектурным и инженерным решениям, и потом — когда запускали решения и смотрели выкачанные картинки и видео. Иногда мемы были так хороши, что жюри в полном составе останавливало работу, чтобы отсмеяться и утереть слёзы. Особенно порадовали весёлые комментарии в коде — чувствуется, что рабочий настрой у участников был правильный!
Называем победителей
Всего голосов 24: ↑21 и ↓3+18
Комментарии5

[По докам] Flutter. Часть 4. Для веб-разработчиков

Время на прочтение9 мин
Количество просмотров11K
Начинаем новую неделю с очередной интерпретации официальной документации Flutter в формате «вопрос-ответ». 4-я часть освещает в сравнительном стиле Flutter для веб-разработчиков. Она целиком посвящена вёрстке и вышла не такой объёмной, как предыдущие. Традиционно рекомендую всем интересующимся Flutter веб-разработчикам заглянуть под кат, чтобы понять, стоит ли пробовать этот фреймворк и сколько усилий это займёт.


Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии17

FunCorp iOS meetup#2

Время на прочтение2 мин
Количество просмотров2K


Приглашаем iOS-разработчиков на FunCorp iOS meetup#2.

15 февраля, Москва, ул. Лесная, 15 (конференц-зал Holiday Inn).

Начало в 12-00.
Доклады
Всего голосов 28: ↑27 и ↓1+26
Комментарии5

Swift Property Wrappers

Время на прочтение7 мин
Количество просмотров16K

Если вы использовали SwiftUI, то наверняка обращали внимание на такие ключевые слова, как @ObservedObject, @EnvironmentObject, @FetchRequest и так далее. Property Wrappers (далее «обёртки свойств») — новая возможность языка Swift 5.1. Эта статья поможет вам понять, откуда же взялись все конструкции с @, как использовать их в SwiftUI и в своих проектах.



Автор перевода: Евгений Заволожанский, разработчик FunCorp.


Прим.пер.: К моменту подготовки перевода часть исходного кода оригинальной статьи потеряла свою актуальность из-за изменений в языке, поэтому некоторые примеры кода намеренно заменены.

Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии2

[По докам] Flutter. Часть 3. Для разработчиков React Native

Время на прочтение16 мин
Количество просмотров7.5K
Продолжаем лаконичную интерпретацию официальной документации Flutter в формате «вопрос-ответ». Вот уже 3-я часть, и она в большей степени будет полезна React Native-разработчикам. В данной интерпретации вы можете найти ответы на частые вопросы, а также определить для себя, сколько усилий нужно приложить, чтобы перейти с одного кроссплатформенного фреймворка на другой.


Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии2

Наш FunCode, или Как мы проводили конкурс для iOS-разработчиков

Время на прочтение4 мин
Количество просмотров1.5K
В ноябре мы запустили конкурс для разработчиков FunCode iOS Сhallenge. Теперь, когда он завершился, эмоции утихли, а победители получили свои награды, мы рассказываем, как всё проходило.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии0

Конкурс для бэкенд-разработчиков FunCode Java/Kotlin challenge

Время на прочтение1 мин
Количество просмотров5.7K
FunCorp проводит конкурс для бэкенд-разработчиков на языке Java/Kotlin с призовым фондом в 550 000 рублей.

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


Условия участия
Всего голосов 24: ↑20 и ↓4+16
Комментарии24

PagerDuty, или Почему по ночам может не спать отдел эксплуатации

Время на прочтение3 мин
Количество просмотров11K
Чем сложнее система, тем больше она обрастает всевозможными алертами. И возникает потребность на эти самые алерты реагировать, агрегировать их и визуализировать. Думаю, ситуация, знакомая многим до нервного тика.

Решение, о котором пойдёт речь, не самое неожиданное, но полноценной статьи по этой теме поиск не выдаёт.

Поэтому я решил поделиться опытом FunCorp и рассказать о том, как выстроен процесс дежурств, кто звонит, почему и как на это всё можно смотреть.


Осторожно, много картинок
Всего голосов 28: ↑27 и ↓1+26
Комментарии0

Знакомство с драйверами Appium (или как выбрать нужный)

Время на прочтение5 мин
Количество просмотров4.7K
Прим. пер.: эту статью я перевела в помощь тем, кто делает первые шаги в автоматизации тестирования и хочет узнать больше об инструменте Appium. В ней описывается общий принцип работы драйверов Appium, а также их виды и назначение. В начале пути многим тестировщикам не хватает упорядоченной информации, а этот материал поможет определиться с выбором нужного инструмента.



Appium — это кроссплатформенный инструмент, который позволяет автоматизировать тестирование мобильных (iOS и Android) и десктопных приложений одновременно. Способ реализации этой мультиплатформенной модели заключается в использовании различных драйверов. По сути, Appium имеет примерно ту же архитектуру, что и Selenium WebDriver, который также использует ряд независимых драйверов для поддержки кроссбраузерной автоматизации тестирования.
Читать дальше →
Всего голосов 21: ↑21 и ↓0+21
Комментарии0

«Нулевой» ад и как из него выбраться

Время на прочтение6 мин
Количество просмотров22K
Значения null, при бездумном их использовании, могут сделать вашу жизнь невыносимой и вы, возможно, даже не понимаете, что именно в них причиняет такую боль. Позвольте мне объяснить.

Читать дальше →
Всего голосов 43: ↑39 и ↓4+35
Комментарии36