Думаю, да. Это резюме позволило сравнительно эффективно получать хоть какие-то отклики: приглашение или отказ, но чтоб понимать, что не игнор (я получил 60% откликов, мои коллеги с более обычными резюме в среднем меньше). Но сами собесы почти целиком зависели от подготовки, увы. Две недели штудирования теории )
В-третьих, переводить деньги себе в Россию это отдельный квест, чтобы легально было и без больших потерь. Знакомый разраб вот возит физически пачки долларов через Грузию, в его случае это оказалось оптимальным.
В-четвёртых, помимо зарплаты, в работе на заграницу, особенно сейчас, есть много нюансов этического и идеологического толка. А переезжать я совершенно точно не собираюсь.
В любом случае, я бы даже за х2 не поехал в Сингапур и уж тем более в современный ЕС. А так, нашёл ставку сеньора в России. Ситуация плохая, но не критическая. Может, только пока что, не знаю.
Я у себя в телеге пишу подробный дневник всех собесов недавних. Народу вроде нравится, как получается. Вот начиная с этого поста об увольнении и дальше ниже последовательно: https://t.me/clockstackwheels/1109
Один знакомый сеньор из Ирландии вот на днях рассказывал, что Европа больше не может себе позволить специалистов его уровня, поэтому он работает на США.
Второго крутого спеца из Лондона вообще сократили, говорит что в Великобритании полная ж с экономикой.
Я сеньор и тимлид на .NET, работал до недавнего времени в Росатоме. Так вот там закрыли целый отдел и сократили несколько сотен человек: почти все мидлы и сеньоры (разработчики на разных языках, аналитики, тестирование).
Короч, с поиском работы сейчас очень непросто. У разработчиков заняло по два месяца найти что-то. На повышение ушли только мидлы (их бизнесы сокращают в последнюю очередь обычно, потому что они самые перформящие из недорогих). Все дорогие спецы ушли или с горем пополам на столько же или с понижением. Поиск долгий, муторный, много игнора, за эйчарами нужно бегать, подключать знакомства итд.
Никакого дефицита кадров даже близко нет, скорее наоборот, разработка уже не растёт, а много где сокращается или приостанавливается.
P.S.Я сам вот тоже только только нашёл работу, а ищу с начала мая.
Это не совсем так. Я вот только уволился из Росатома (не сам, сократили несколько сотен айтишников), и мидлы сравнительно хорошие места себе нашли, а вот сеньоры, лиды и архитектора ушли на понижение. Джуны, пожалуй, да, нужны ещё меньше, но и говорить, что сеньоры рынку нужны, это неверно. Рынок как раз оставил не слишком дорогих, но уже перформящих мидлов, и решил сэкономить на всяких штуках, за которые обычно отвечают сеньоры: качество кода, поддерживаемость, архитектура итд.
У них в self-hosted версии сервак должен находиться в приватной сети с клиентами, потому что нет никакой аутентификации. Это, мягко говоря, неудобно, а на телефонах ещё и проблематично.
Очень помогает в этом подходе то, что API отдельных сущностей может быть более свободным, но закрытым для использования вне домена. Грубо говоря, часто в энтерпрайзе кейсы типа: "отправить письмо можно только тогда, когда к нему приложен документ в статусе Согласовано". Тогда собираем агрегат из письма и документа, в самом письме метод отправки делаем internal (в джаве это package private, вроде как), а публичный метод отправки остается только у агрегата.
Интересно, что мы невольно пришли у себя на проекте к такой же архитектуре, только двигаясь из классического DDD. Мы объявляем агрегат (но это агрегат не в терминологии Эванса, а как раз комбинация сущностей, что-то вроде вашего AssignData), собираем его за один запрос целиком в слое инфраструктуры, а сам он при этом выполняет свою бизнес-логику независимо от IO. Широко используется сокрытие в рамках одной сборки (модификатор internalв C#, на котором мы пишем), чтобы слою приложения вообще нельзя было сломать логику.
В вашем случае, например, в примере с Barcoder слой приложения может не проверить единственность одной из коробок, и тогда Domain-слой сработает неправильно. Как мы делали мы. Вообще, паковать одну коробку в несколько и несколько в одну выглядит разными бизнес-операциями. Но если нужно в одной, то:
Domain:
public class BoxesAggregate
{
public IReadOnlyList<Box> Boxes { get; private set; }
public IReadOnlyList<OsgBox> OsgBoxes { get; private set; }
public BoxesAggregate(List<Box> boxes, List<OsgBox> osgBoxes) {
if (boxes == null || osgBoxes == null || (boxes.Count > 1 && osgBoxes.Count > 1))
{
throw new Exception("Перепаковать можно только одну во много или наоборот");
}
Boxes = boxes.AsReadOnly();
OsgBoxes = osgBoxes.AsReadOnly();
}
public void Repack()
{
if (boxes.Count == 1)
{
// код перепаковки 1
}
else
{
// код перепаковки 2
}
}
public (List<BoxId>, List<OsgBoxId>) GetIds()
{
// возвращаем идентификаторы коробок для связывания в слое приложения
}
}
Application:
public interface IAggregateRepo
{
public BoxesAggregate BuildFor(List<BoxId> boxIds, List<OsgBoxId> osgBoxIds);
}
public class RepackBoxesAppService(
IAggregateRepo agRepo,
IBoxRepo boxRepo,
IOsgBoxRepo osgBoxRepo,
ILinkRepo linkRepo
)
{
public void Handle(RepackBoxesRequest request)
{
// разумеется всё это одна транзакция, и никакие данные не сохранятся частично
BoxesAggregate aggregate = agRepo.BuildFor(request.BoxIds, request.OsgBoxIds);
aggregate.Repack();
boxRepo.SaveChanges(aggregate.Boxes);
osgBoxRepo.SaveChanges(aggregate.OsgBoxes);
linkRepo.UpdateLinks(aggregate.GetIds());
}
}
Infrastructure:
public class AggregateRepo : IAggregateRepo
{
// реализация сборки агрегата путём запроса сразу всех коробок и коробов,
// и затем вызова конструктора BoxesAggregate
}
Таким образом, почти никакие манипуляции из слоя приложения не сломают данные и не смогут обойти ограничения в бизнес-логике.
Удивительно, конечно, что он отсылает к истории, когда Финляндия буквально воевала на стороне фашистов, и это как бы не то, что считается чем-то хорошим в наши дни.
Ну, честно говоря, фигня. 600к не деньгами, а на облако, причём с ограничением в год. Я трачу на облако в год тысяч 30 максимум, и на этом серваке живут все мои проекты. То есть по сути приз это эквивалент 30к рублей.
Думаю, да. Это резюме позволило сравнительно эффективно получать хоть какие-то отклики: приглашение или отказ, но чтоб понимать, что не игнор (я получил 60% откликов, мои коллеги с более обычными резюме в среднем меньше). Но сами собесы почти целиком зависели от подготовки, увы. Две недели штудирования теории )
https://disk.yandex.ru/i/wNaeu4hBLNBHWw
Эйджизм в [российском?] айти совершенно точно есть. Может не 40+, но кандидату 50+ кратно сложнее найти работу, независимо от его скиллов.
В госухе на возраст не смотрят. И платят там не всегда ниже рынка (в Росатоме платили очень хорошо).
А вы сами искали?
Во-первых, процент игноров и отказов там кратно выше, просто другая культура найма.
Во-вторых, в Европе есть некоторые проблемы. Об этом мне говорили и личные знакомые и пишут публичные источники информации.
В-третьих, переводить деньги себе в Россию это отдельный квест, чтобы легально было и без больших потерь. Знакомый разраб вот возит физически пачки долларов через Грузию, в его случае это оказалось оптимальным.
В-четвёртых, помимо зарплаты, в работе на заграницу, особенно сейчас, есть много нюансов этического и идеологического толка. А переезжать я совершенно точно не собираюсь.
Всё верно, в отчётах о качестве кода и архитектуре ПО особо ничего интересного не написать )
Мои знакомые из ЕС говорят обратное. Да и в других источниках тоже пишут обратное.
В любом случае, я бы даже за х2 не поехал в Сингапур и уж тем более в современный ЕС. А так, нашёл ставку сеньора в России. Ситуация плохая, но не критическая. Может, только пока что, не знаю.
Рад, что вы спросили :)
Я у себя в телеге пишу подробный дневник всех собесов недавних. Народу вроде нравится, как получается. Вот начиная с этого поста об увольнении и дальше ниже последовательно: https://t.me/clockstackwheels/1109
Так это говорят люди оттуда, которые много лет там живут, а не из российского телевизора.
Своих хватает, просто платить им бизнес не может. Видимо, расчёт на то, что индусы сильно дешевле.
Один знакомый сеньор из Ирландии вот на днях рассказывал, что Европа больше не может себе позволить специалистов его уровня, поэтому он работает на США.
Второго крутого спеца из Лондона вообще сократили, говорит что в Великобритании полная ж с экономикой.
Так что не Путин. Весь мир колбасит сейчас.
Я сеньор и тимлид на .NET, работал до недавнего времени в Росатоме. Так вот там закрыли целый отдел и сократили несколько сотен человек: почти все мидлы и сеньоры (разработчики на разных языках, аналитики, тестирование).
Короч, с поиском работы сейчас очень непросто. У разработчиков заняло по два месяца найти что-то. На повышение ушли только мидлы (их бизнесы сокращают в последнюю очередь обычно, потому что они самые перформящие из недорогих). Все дорогие спецы ушли или с горем пополам на столько же или с понижением. Поиск долгий, муторный, много игнора, за эйчарами нужно бегать, подключать знакомства итд.
Никакого дефицита кадров даже близко нет, скорее наоборот, разработка уже не растёт, а много где сокращается или приостанавливается.
P.S.Я сам вот тоже только только нашёл работу, а ищу с начала мая.
Это не совсем так. Я вот только уволился из Росатома (не сам, сократили несколько сотен айтишников), и мидлы сравнительно хорошие места себе нашли, а вот сеньоры, лиды и архитектора ушли на понижение. Джуны, пожалуй, да, нужны ещё меньше, но и говорить, что сеньоры рынку нужны, это неверно. Рынок как раз оставил не слишком дорогих, но уже перформящих мидлов, и решил сэкономить на всяких штуках, за которые обычно отвечают сеньоры: качество кода, поддерживаемость, архитектура итд.
У них в self-hosted версии сервак должен находиться в приватной сети с клиентами, потому что нет никакой аутентификации. Это, мягко говоря, неудобно, а на телефонах ещё и проблематично.
Интересная статья, но всё-таки это ошибка выжившего. На один стрельнувший пет-проект приходится тысячи доведённых до продакшена, но не востребованных.
Очень помогает в этом подходе то, что API отдельных сущностей может быть более свободным, но закрытым для использования вне домена. Грубо говоря, часто в энтерпрайзе кейсы типа: "отправить письмо можно только тогда, когда к нему приложен документ в статусе Согласовано". Тогда собираем агрегат из письма и документа, в самом письме метод отправки делаем internal (в джаве это package private, вроде как), а публичный метод отправки остается только у агрегата.
Интересно, что мы невольно пришли у себя на проекте к такой же архитектуре, только двигаясь из классического DDD. Мы объявляем агрегат (но это агрегат не в терминологии Эванса, а как раз комбинация сущностей, что-то вроде вашего
AssignData
), собираем его за один запрос целиком в слое инфраструктуры, а сам он при этом выполняет свою бизнес-логику независимо от IO. Широко используется сокрытие в рамках одной сборки (модификаторinternal
в C#, на котором мы пишем), чтобы слою приложения вообще нельзя было сломать логику.В вашем случае, например, в примере с Barcoder слой приложения может не проверить единственность одной из коробок, и тогда Domain-слой сработает неправильно. Как мы делали мы. Вообще, паковать одну коробку в несколько и несколько в одну выглядит разными бизнес-операциями. Но если нужно в одной, то:
Domain:
Application:
Infrastructure:
Таким образом, почти никакие манипуляции из слоя приложения не сломают данные и не смогут обойти ограничения в бизнес-логике.
Удивительно, конечно, что он отсылает к истории, когда Финляндия буквально воевала на стороне фашистов, и это как бы не то, что считается чем-то хорошим в наши дни.
Ну, честно говоря, фигня. 600к не деньгами, а на облако, причём с ограничением в год. Я трачу на облако в год тысяч 30 максимум, и на этом серваке живут все мои проекты. То есть по сути приз это эквивалент 30к рублей.