Java Developer
6.45K subscribers
235 photos
8 videos
12 files
279 links
MAKE JAVA GREAT AGAIN

Мемы: @java_memes
加入频道
Астрологи объявили о покупке Тинькофф Яндексом
https://www.interfax.ru/business/728140

Количество мемов увеличено вдвое
SalesForce — 1C на максималках

Рубрика АйтиДудь, в которой я на этот раз взял #интервью у Никиты, разработчика SalesForce. Мне всегда интересно узнавать, как обстоят дела в других областях IT, тем более SF тесно связано с Java. Надеюсь, вам тоже понравится.

— Привет, Никита! Расскажи, как ты стал разрабом и попал в SalesForce?

В принципе со школы знал, что буду разработчиком. Учился в ИТ классе, ездил во всякие летние школы, короче, максимально закономерно и ничего интересного. С Salesforce познакомился на первой же работе, в консалтинге. Там была возможность поработать ещё с java и nodejs. Несмотря на невыразительность встроенных форсовых языков, понравилась возможность "с места" решать задачи бизнеса. С тех пор почти везде так или иначе работал с Salesforce.

— Первая работа на позиции SF-разработчика получается. Почему именно туда пошел?

Интересно стало, что это. Да и работу надо было быстрее найти, дали 2 оффера - или разраб сф или 2 линия поддержки reg.ru. Выбор очевиден))

— Расскажи коротко, что такое Salesforce?

Изначально это был облачный 1С на стероидах. Сходу среди возможностей можно перечислить ведение продаж, всяких команд поддержек и маркетинговых кампаний. Но со временем это стало огромной платформой с такими коробочными штуками, как computer vision или iot.

— Причём здесь Java?

Под капотом у форса - Java и Oracle'овая БД. Из-за этого язык Salesforce Apex синтаксически похож на Джаву, хотя и очень порезанную. Переход с Джавы на апекс обычно проходит достаточно легко, поскольку Апекс намного проще. Конечно, чтобы полноценно разрабатывать на Sf одного Апекса недостаточно, но это хороший старт.
— Плюсы и минусы SalesForce

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

Короче, из плюсов:
• Неплохие возможности для лоу-код решений
• Обширная платформа с кучей всяких интересностей из коробки (IoT, computer vision, аналог kafka, serverless должны завезти скоро)
• Быстрое вхождение, собственная платформа для обучения, отзывчивое коммьюнити
• Работа близко к бизнесу. Решаешь сразу бизнес проблемы, а не абстрактные какие-то задачи. В адекватных компаниях бывает даже отсутствие проксей между разработкой и бизнесом.
• SFDX CLI довольно мощная тулза, которую легко расширять.
• На западе рынок очень большой и часто приходят вакансии с релокацией. В России так же рынок развивается, но медленно из-за стоимости решения. В основном это крупные энтерпрайзы или консалтеры, работающие на зарубеж.

Из минусов
• Salesforce Apex - абсолютно невыразительный язык. Нет рефлексии толком, много вещей которые есть в каком-то удобном виде из коробки в других языках приходится либо костылять, либо вообще нереально воспроизвести.
• Пакетирование в зачаточной стадии. Хорошо, что оно есть, но оно ужасно. Неймспейсы прикручивать это вообще отдельная грустная песня
• Frontend тоже печаль-беда. Прикрутить что-то с npm можно только через шаманство. При этом современные фреймворки заюзать для внутренних пользователей - близко к невозможному. Для внешних сильно проще.
• Качество кода на большинстве проектов - просто ужас
• Время отклика от тестов. Если в Джаве это почти мгновенно, то тут секунд 10 - это вообще топ скорость, поскольку все в облаке. Очень усложняет TDD
• Цены вопроса. Стоят лицензии Sf как чугунный мост. А лицензий там всяких разных полно, практически на каждую фичу отдельная лицуха. Чтобы понимать порядок цифр, полноценная лицензия стоит 100$ на пользователя в месяц. Только с этой лицензии открывается возможность настраивать орг как хочешь, разработка, вот это вот всё.

Палка о двух концах:
• Ограничения. Форс - платформа, где вы шарите мощности с другими клиентами. Соответственно нужно, чтобы ваш код не уронил всё. Для этого форс вводит искусственные ограничения. Например, не больше 150 запросов в базу за транзакцию или не больше 10к записей на апдейт. И таких ограничений, которые надо учитывать при разработке, довольно много.

В общем, штука интересная и хороша для бизнеса, но только если её по назначению использовать. На старой работе одному заказчику делали проект на форсе просто ради того чтобы на форсе, хотя на Java+Angular можно было бы сделать тоже самое в разы быстрее, дешевле, качественнее и без проблем со стороны платформы. Справедливости ради - такой бред редко происходит. В общем, как и везде, Sf - это инструмент, и надо смотреть подходит ли он в каждом конкретном случае.
— Главный вопрос. Что по зп в SalesForce?

Насколько мне известно, зп чуть выше чем на джаве. Это из-за того, что рынок почти исключительно зарубежный. Джуны, думаю, примерно 60-140, мидлы 140-200, сеньоры и иже с ними 200+. В последнем консалтере, где я работал вакухи висят 150-230, и, насколько мне известно, ищут они в основном как раз мидлов. С опытом джавы можно смело на мидла заходить.

— Как вкатиться в SF?

Если говорить чисто о знаниях, то trailhead (trailhead.salesforce.com), пожалуй, лучше место для старта. Все очень просто описано, иногда раздражающе просто, местами прям как для дебилов :)

Есть несколько книжек по Apex. Основная — Advanced Apex Programming in Salesforce. Есть онлайн курсы, например, sfdc99.com или apexhours.com

Ещё у форса есть сертификации. Их любят в консалтинге — с сертификатами продавать разрабов проще. Вершина сертификационной программы - Technical Architect. Довольно сложная защита решения, на подготовку единого даётся пара часов. Есть специальный курсы даже, которые готовят к этому экзамену - FlowRepublic.

Практически все материалы англоязычные.
Но на одной теории далеко не уедешь - нужна практика на реальных задачах. Поэтому если хочется действительно въехать в форс - придётся искать работу в этом направлении. В России есть несколько консалтеров, в основном в Москве. И есть, конечно, энтерпрайзы. Точно знаю что Philip Morris, Fleetcor и Kaspersky сейчас в поиске.

Ну и подписывайтесь на мой канал @salesforcecraft и заходите в чатик московской группы по форсу (https://yangx.top/joinchat/DYEz8R0b5Tj0fqoA6SsiNw). Митапы устраиваем, общаемся, все дела :)
git rename branch

Заметка по git "как переименовать ветку"

1. Переименовываем локальную ветку:
git branch -m new-name

2. Дропаем удаленную ветку со старым именем и пушим с новым:
git push origin :old-name new-name

3. Обновляем upstream:
git push origin -u new-name

#git
Друзья, я веду ещё канал с мемами об Айти @java_memes. Стараюсь держать баланс баянов и оригинального контента. Подписывайтесь на канал, пересылайте коллегам, друзьям, родственникам. И скидывайте свои мемы в личку

Линк на канал t.me/java_memes
Сгонял в новое отделение #Сбера на Цветном бульваре. Современные терминалы, безбарьерное пространство, кофейня. Выглядит всё здорово. Ориентир на Apple прослеживается. Кайф!
Java Developer pinned «Друзья, я веду ещё канал с мемами об Айти @java_memes. Стараюсь держать баланс баянов и оригинального контента. Подписывайтесь на канал, пересылайте коллегам, друзьям, родственникам. И скидывайте свои мемы в личку Линк на канал t.me/java_memes»