Site icon AppTractor

Есть ли «потолок» в [Android] разработке — обсуждение на Reddit

На Reddit новое обсуждение:

Я уже некоторое время работаю в роли разработчика мобильных приложений (Android) и не могу отделаться от ощущения, что это короткий карьерный путь. После 6–9 лет в этой роли есть ли куда двигаться?

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

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

Поэтому я задаюсь вопросом — это все? Люди просто продолжают делать одно и то же в течение 10–15 лет, пока их не заменят более молодые разработчики, которые могут сделать ту же работу дешевле? Или есть естественный путь перехода (в бэкенд, продукт или что-то еще), который действительно имеет смысл?

Хотелось бы услышать от других, кто был в треке разработки приложений дольше или сделал пивот.

Вот некоторые ответы

Это не совсем верно в больших компаниях. Множество людей делают большие дела в приложениях Android, в производительности, в библиотеках. Они находятся на уровне L7+ (senior персонал), зарабатывают большие 6-значные суммы, в некоторых случаях 1 ММ+.

Перейдите в бэкенд. Возьмите нижний уровень и снова начните с нуля. Я сделал это и не пожалел. В долгосрочной перспективе это того стоит. У Android жесткий потолок — и это меня действительно огорчает, потому что я люблю мобильную разработку.

Я работаю нативным Android-разработчиком уже более 11 лет, первые 3 или 4 года казались легкой работой, в основном UI/UX, как здесь упоминается, но когда у меня появилась возможность поработать над другими проектами, связанными с BLE и IoT, мои взгляды изменились, затем я на время переключился на гибридную разработку. По моему мнению, сложность моих приложений варьируется, и я получаю больше удовольствия, когда работаю над сложными транспортными слоями и сложной бизнес-логикой. Тем не менее, у меня смешанные чувства по поводу ответа на вопрос. Я вижу, что все используют свои телефоны в качестве основной точки контакта с внешним миром, а это значит, что приложения совсем не умерли, даже если в ближайшем будущем на рынке появятся интеллектуальные устройства с искусственным интеллектом без приложений или без экрана. Вряд ли люди заменят текущее взаимодействие, которое обеспечивают современные технологии (и приложения). Хотя приложения широко используются, предложение превышает спрос, есть приложение для всего, и у большинства компаний уже есть свое приложение, поэтому я вижу меньше инвестиций в новые приложения, а бюджет идет на обслуживание и расширение функциональности. Я не вижу, чтобы я изменил свою деятельность в ближайшем будущем, но я вижу, что мои долгосрочные цели вращаются вокруг применения ИИ в мобильном мире, управления командой и навыков межличностного общения (чтобы стать лучшим руководителем команды). И если новая технология заменит телефоны или приложения, какими мы их знаем, то это будет моей новой технологией для изучения.

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

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

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

Это только то, что пришло мне в голову.

Сейчас я (в основном) вышел на пенсию после долгой и счастливой карьеры в области разработки программного обеспечения. Позвольте мне рассказать вам секрет: любая работа в области компьютерных наук становится тупиковой после 6-9 лет. Главное — не допустить этого.

Я видел, как многие люди, которые продолжали заниматься одними и теми же видами инженерии, в конечном итоге столкнулись с проблемами «старения», когда им было 40 и они занимались одной конкретной областью технологий в течение 20 лет.

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

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

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

С другой стороны, работа в бэкенде не лучше, она просто другая. Менее прямое влияние на пользователя. Вероятно, больше проблем с программированием, если только вы не делаете просто еще один CRUD-сервис. Больше внимания таким аспектам, как мониторинг, безопасность и т.д. Все дело в выборе того, что вам больше всего подходит. Если текущий стек вам не подходит: выберите альтернативный. Просто хочу отметить, что, вероятно, есть много разработчиков бэкенда, которые тоже достигли своего предела и готовы попробовать что-то еще, например, мобильные приложения ;)

Что касается меня, я работаю инженером мобильных приложений более 12 лет, и мне еще многое предстоит сделать в этой области. Сначала я был обычным мобильным разработчиком, создавал бизнес-функции. Затем я перешел в команду по разработке ядра мобильных приложений, где занимался процессами CI/CD, борьбой с техническим долгом и улучшением архитектуры приложений (модуляризацией). Теперь я главный инженер и работаю над системой проектирования в нашей компании. Для меня не видно тупика :)

Exit mobile version