• Всем привет! На связи Евгений и Сергей — авторы проекта StringConcat. На двоих у нас уже больше 30 лет опыта в разработке. В этой статье коротко расскажем о себе, о том, что мы делаем, зачем и кому это нужно.

    Два слова о нас

    Мы — идейные задроты. Пошли в айтишечку, когда за нее платили банан и проездной на троллейбус (если вообще удавалось найти работу). А весь жир был в нефтянке. Ну или можно было пойти сисадмином или эникеем — если, опять же, найдешь работу.

    Но, как оказалось, это было примерно как купить биткоин в 2010-м. Айтишечка поперла, а мы — вместе с ней.

    Мы работали, меняли проекты, успели побывать обычными разработчиками, а потом доросли до руководителей и технических директоров. Были в телекоме, финтехе и медицине. Разрабатывали десктопные приложения, софт для железок и серверные системы. Писали на PHP (ужас), Python (ужас-ужас), C, C++ и еще куче языков, пока в итоге не осели в JVM-болоте энтерпрайзных монстров, где и квакаем до сих пор.


    Как все начиналось

    Но самое удивительное — сколько бы мы ни ходили по проектам, проблемы везде были абсолютно одинаковые. Думаю, вы и себя в этом списке узнаете:

    • Никто уже не понимает сложную бизнес-логику и спрятался в своем маленьком огородике
    • При починке одного бага возникает еще три новых (хорошо если вообще что- запускается)
    • Мониторинг есть только в формате «недовольные клиенты обрывают телефон техподдержки»
    • Как устроена система целиком, знают только пара старцев, которым уже пора на пенсию (у одного из них старческое слабоумие)
    • Релиз и деплой — это микроинсульт у тимлида
    • В очередной раз сделали совсем не то, что было нужно

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

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

    Именно этот опыт и стал отправной точкой.

    В какой-то момент мы поймали себя на мысли: а что, если собрать все, что мы считаем важным, в единый, последовательный набор принципов? Такой себе путеводитель по разработке сложных систем. Сначала это было нужно только нам самим. Потом мы поняли, что это нужно и другим. Попробовали вынести наши подходы за пределы своих команд — и неожиданно оказалось, что запрос есть, причем вполне понятный. Они устали постоянно разгребать последствия, хотят делать свою работу более осознанно и оставаться востребованными специалистами.

    Кстати, мы всю дорогу рассказывали, что разработка — это процентов 20 всего процесса. Остальное — понимание бизнеса, предметной области, архитектуры, требований, компромиссов и всего того, что большинство старается скипнуть (я тут код пришел писать, а не вот это всё). И знаете, приятно иногда оказаться правыми. Пришел ИИ, навыки кодинга неплохо так подешевели, а вся остальная часть профессии никуда не делась (про ИИ как нибудь поговорим отдельно, так что подписывайтесь).

    Так появился проект, который в итоге мы назвали StringConcat. Когда-то мы шутили, что главное в нашей работе — правильно склеивать строки в браузере.

    Всем привет! На связи Евгений и Сергей — авторы проекта StringConcat. На двоих у нас уже больше 30 лет опыта в разработке. В этой статье коротко расскажем о себе, о том, что мы делаем, зачем и кому это нужно.

    Два слова о нас

    Мы — идейные задроты. Пошли в айтишечку, когда за нее платили банан и проездной на троллейбус (если вообще удавалось найти работу). А весь жир был в нефтянке. Ну или можно было пойти сисадмином или эникеем — если, опять же, найдешь работу.

    Но, как оказалось, это было примерно как купить биткоин в 2010-м. Айтишечка поперла, а мы — вместе с ней.

    Мы работали, меняли проекты, успели побывать обычными разработчиками, а потом доросли до руководителей и технических директоров. Были в телекоме, финтехе и медицине. Разрабатывали десктопные приложения, софт для железок и серверные системы. Писали на PHP (ужас), Python (ужас-ужас), C, C++ и еще куче языков, пока в итоге не осели в JVM-болоте энтерпрайзных монстров, где и квакаем до сих пор.


    Как все начиналось

    Но самое удивительное — сколько бы мы ни ходили по проектам, проблемы везде были абсолютно одинаковые. Думаю, вы и себя в этом списке узнаете:

    • Никто уже не понимает сложную бизнес-логику и спрятался в своем маленьком огородике
    • При починке одного бага возникает еще три новых (хорошо если вообще что- запускается)
    • Мониторинг есть только в формате «недовольные клиенты обрывают телефон техподдержки»
    • Как устроена система целиком, знают только пара старцев, которым уже пора на пенсию (у одного из них старческое слабоумие)
    • Релиз и деплой — это микроинсульт у тимлида
    • В очередной раз сделали совсем не то, что было нужно

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

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

    Именно этот опыт и стал отправной точкой.

    В какой-то момент мы поймали себя на мысли: а что, если собрать все, что мы считаем важным, в единый, последовательный набор принципов? Такой себе путеводитель по разработке сложных систем. Сначала это было нужно только нам самим. Потом мы поняли, что это нужно и другим. Попробовали вынести наши подходы за пределы своих команд — и неожиданно оказалось, что запрос есть, причем вполне понятный. Они устали постоянно разгребать последствия, хотят делать свою работу более осознанно и оставаться востребованными специалистами.

    Кстати, мы всю дорогу рассказывали, что разработка — это процентов 20 всего процесса. Остальное — понимание бизнеса, предметной области, архитектуры, требований, компромиссов и всего того, что большинство старается скипнуть (я тут код пришел писать, а не вот это всё). И знаете, приятно иногда оказаться правыми. Пришел ИИ, навыки кодинга неплохо так подешевели, а вся остальная часть профессии никуда не делась (про ИИ как нибудь поговорим отдельно, так что подписывайтесь).

    Так появился проект, который в итоге мы назвали StringConcat. Когда-то мы шутили, что главное в нашей работе — правильно склеивать строки в браузере.