1773

История с Java...script

Серия История с Java...script

Устраивался как-то на одну из первых работ. Откликнулся на вакансию программиста в компанию местного провайдера. В описании ничего необычного, требуются знания HTML, JavaScript и чего-то еще, уже не вспомню.

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

Уселись с ним на диван, и он начал беседу: "Насколько хорошо ты знаешь Java". И делает паузу. Я напрягся. После двухсекундной паузы он все же произносит: "...script". Я с облегчением выдохнул: "Нет предела совершенству." Далее шел еще какой-то диалог, но не суть важно.

На первый рабочий день пришел другой программист и сразу выяснилось, что я нужен ему на замену, а он увольняется (или скорее его увольняют); поэтому он передает мне все дела, документацию и прочее. Когда он открыл проект, над которым работал в данный момент, то я покрылся холодным потом. Это был самый настоящий 100% натуральный код на Java. Он поинтересовался – с какого пункта надо объяснять. Я признался, что с нуля. Пути отхода я уже не видел. В голове промелькнули мысли про голодные дни, когда я снова ищу работу, и надо проходить собеседования. Поэтому я остался внимать суть по новому для меня направлению, тем более день собеседования уже был позади.

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

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

В итоге когда мозг совсем набух от влитых знаний, я принял самостоятельное волевое решение переписать проект на PHP, о котором никому не сообщил и принялся за переделку. На мой взгляд этот личный кабинет был очень простой и делать его на Java было неправильным решением. Я так понял, что тот, кто этим занимался, просто знал Java и ему было так удобно сделать. А то, что найти специалистов на замену будет сложновато как-то никто не думал. При этом я прибегнул к небольшой хитрости. Дело в том, что с этим проектом можно было работать только с ноутбука в офисе, во внутренней сети. Но я нашел лазейку, и отключил функцию засыпания ноутбука, когда крышка была закрыта. Уходя с работы, я просто закрывал крышку с незалоченным Windows, а из дома подключался к нему через удаленный рабочий стол и работал. Так я не был зависим только от рабочего времени и писал код вечером и ночью. Я только беспокоился на тему того, что кто-то надумает посмотреть что в ноуте в этом время, но вроде ничего такого не было.

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

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

Лига программистов

2.3K постов12K подписчика

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества

Вы смотрите срез комментариев. Показать все
19
Автор поста оценил этот комментарий

Слишком много невероятностей в посте. Автор, как минимум, приукрасил действительность(это совсем мягко говоря).


Мне представляется невозможной ситуация, где руководство не в курсе, кого же оно ищет: фронта? бэка? Ну, если написано в качестве основы js и html - это же точно фронт. На java фронт не пишут, вать машу. Что, руководство не способно отличить java от js? Автор тестового задания точно сможет. Зачем искать фронта, если нужен бэк? Короче, уже в этой точке история теряет всякий намек на истину, и, похоже, написана чисто вокруг "java <-> javascript"


Удалённый рабочий стол. Он же rdp, это винда.

Rdp скрывает рабочий стол пользователя, невозможно с экрана ноута увидеть, что там кто-то подключен явно, и что он там делает - тем более. Там будет виден экран блокировки. Оставлять незалоченным ноут можно только если использовать какой-то TeamViewer или Ammyy Admin. Но и то, и это умеет быть службой, и прекрасно себе работает, не привязываясь к сеансу пользователя. Но автор-то использовал удалённый рабочий стол.


Более того - а кто настроил проброс для rdp? В конторе есть админ, и он не в курсе, что кто-то из сотрудников в обход него порт себе втихаря прокинул? Ну, это же провайдер - там сто пудов будет не просто админ, а целый отдел админов. И стоять там будет точно не "домашний" тплинк в качестве шлюза, а что-то уровнем повыше немного, и такое, что подобрать к нему пароль совершенно не поможет никак делу, да и веброжи у него нет зачастую. Как и доступа из внутренней подсети.


Человек, не имеющий понятия, что такое ЯП со строгой типизацией, разобрался в проекте за две недели, и переписал его на свой лад?

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


Почему именно это время? Да потому что позднее вряд ли кто-то мог копаться в сервлетах на проде, когда можно было использовать спринг.


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


А теперь все в кучку:

Провайдер, доступ, технологии, время.


В общем, в текущей реализации хорошая сказка получилась.

раскрыть ветку (24)
1
Автор поста оценил этот комментарий

Слишком много невероятностей в посте

спасибо. я то думал моя жизнь скучна, а она невероятна


Человек, не имеющий понятия, что такое ЯП со строгой типизацией

вы по тексту из нескольких абзацев сформировали мнение о том, какое я имел понятие или не имел. третий глаз имеется?


использовал удалённый рабочий стол

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

раскрыть ветку (16)
1
Автор поста оценил этот комментарий

Реально заебали местные копатели, всё всем надо доказать 🤦 нахуй бы пошли.

Я так понимаю, там был сайт на jsp, клторый, тащемта, не совсем уж и бэк, но людям с ограниченными возможностями этого не понять, как сайт мог жить на JS, потом мувнуться на JSP, а потом на PHP.

Там бэээк, блять. Еще бы сказали, что там был ангуляр и react с rest api на nodejs. Баранье, что взять, не бери в голову.

раскрыть ветку (2)
2
Автор поста оценил этот комментарий

Да понятно, что там было.

Не понятно, как можно искать непойми кого на этот проект.

раскрыть ветку (1)
0
Какава красота
Автор поста оценил этот комментарий

Пф, я так собеседовался во Владис, крупная контора риэлторская. И по факту собеседования начались вопросы, что я умею, чтобы понять, какой функционал они на меня хотят повесить. Ессно, я больше их не слышал. Так что охотно верю, что некоторые долж. лица понятия не имеют, какие у них потребности и что им нужно

Автор поста оценил этот комментарий

Ну так ты и сочиняешь...

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


Ну как... ты же сам пишешь, что ничего не понимал и охренел, когда увидел. Сидел, разбирался, изучал... Там же мало знания самого синтаксиса - там у тебя сервлеты с томкатом были. Если не знаешь, что это такое и как оно под капотом работает, - это за две недели не разобраться никак, тем более - еще и написать полную замену этому... Тут месяц будешь только эту технологию изучать, даже если чисто ядро знаешь, если нормально так изучать, а не верхушки хватать.

раскрыть ветку (12)
4
Автор поста оценил этот комментарий

У провайдера не закрыт удалённый доступ во внутреннюю сеть

это веб-приложение, которое доступно было только во внутренней сети. это значит идешь по адресу типа http://192.168.100.30 и видишь страницу этого ЛК. Соответственно снаружи ты ее не увидишь, потому что это локальный адрес. А сам рабочий ноут имел выход наружу. Что тут невероятного?


еще и написать полную замену этому

а в чем проблема написать сайт, если доступен пример. HTML имеется, данные запросов тоже можно увидеть в браузере. сопоставить их со схемой БД тоже можно

раскрыть ветку (11)
3
Автор поста оценил этот комментарий

Чувак, рабочий ноут имеет доступ наружу != рабочий ноут имеет доступ ко всему наружу.

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


У тебя контора, основная задача которой - последняя миля сети. То есть, контора, где пересекаются региональная сеть и сети клиентов. Тот, кто админит в этой конторе, не может не знать, что будет, если произойдёт несанкционированное проникновение за защищённый периметр сети. Там стандартный набор политик безопасности, как правило. И по-любому закрыты все подключения извне, в том числе, через удалённый доступ. Максимум через vpn будет, и то не всем.


При чем здесь твое приложение, которое светится во внутреннюю сеть? Это и так понятно.


Чел, у меня уже серьезные подозрения, что ты просто мимикрируешь под программиста.


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

раскрыть ветку (10)
3
Автор поста оценил этот комментарий

ты просто мимикрируешь под программиста

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


Тот, кто админит в этой конторе, не может не знать, что будет

я забыл что у тебя третий глаз и ты видишь кто как админит в конторах


фронт шлет запросы напрямую в базу

естественно не напрямую, а через собственно приложение, в коде которого прописаны строки запросов в БД

раскрыть ветку (9)
3
Автор поста оценил этот комментарий

Так мы можем спорить бесконечно.


Ты выдергиваешь мои слова из контекста, отвечаешь только на удобные тебе вопросы, игнорируешь ключевые и неудобные.


Для начала давай основной тезис разберём.


Можешь себе представить, зачем рекрутеру искать JS-программиста в Java-проект? Вот и я не могу. А у тебя в посте именно так написано.

раскрыть ветку (8)
0
Автор поста оценил этот комментарий

Можешь себе представить, зачем рекрутеру искать JS-программиста в Java-проект?

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

раскрыть ветку (7)
2
Автор поста оценил этот комментарий

Серьезно?

И сколько таких "ошибившихся" в цепочке?

Автор тестового задания, некий директор, выше которого нет - что, все они "ошиблись"?

И эту "ошибку" никто не заметил в процессе общения прям вообще никак?


Да это бы вскрылось на первом же кандидате, хрюше дали бы по щщам, и выложили бы нормальную вакансию.


Да и не принимаются программисты на работу через тестовое задание без технического интервью.


Есть ли смысл продолжать спор?

раскрыть ветку (6)
1
Автор поста оценил этот комментарий
У меня в новостройке 1 провайдер с рейтингом 1 звезда из 5 на Яндексе. Приходится им пользоваться т.к. других вариантов просто нет. Обслуживает он исключительно наш район из полутора десятков домов и я уверен что это "провайдер" в котором работает именно полтора землекопа, и это 2024 год. Возможно тс устроился на работу к аналогичному провайдеру, тем более в те годы такие дворовые провайдеры это была норма.
раскрыть ветку (1)
Автор поста оценил этот комментарий

Если бы только в этом было дело.


Там же совокупность факторов. Каждый отдельно еще худо-бедно можно встретить в реальности, но они же все в одном флаконе преподносятся.


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

Автор поста оценил этот комментарий

Есть ли смысл продолжать спор?

нет, конечно. вся суть ваших доводов, что вы не верите)

раскрыть ветку (3)
3
Автор поста оценил этот комментарий

Автор лепит околесицу.

Звучит примерно как " я из двух литров воды выгнал три литра спирта, за ночь, без дрожжей". Вы просто не понимаете и не верите.

Аргументация жиденькая.


Изначально все звучит очень странно.

И противоречиво.

За две недели въехать в другой язык.

А у джавы и джава скрипт общего, название.

Потом переписать проект со всей логикой.

И выкатить что бы никто на всех этапах не заметил.


Единственный вариант, если там логика уровня калькулятора.и то с оговорками.

0
Автор поста оценил этот комментарий

А, верить надо?

Не, чувак, верить - это не про нас.


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


Также и тут - можно нахватать верхушек, и верить, что ты понимаешь, как оно работает.


Инженер не верит - инженер всегда не доверяет и проверяет.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Там не все истории рушиться с первого обзаца. Провайдер, в штате один программист и ни кто не контролирует что он там делает
0
Автор поста оценил этот комментарий
Для фронта на java есть, чтоб черти его драли, gwt если это считается конечно
0
Автор поста оценил этот комментарий

На java фронт не пишут, вать машу.

Почему, если совсем делать нечего, можно написать экзешник и использовать вместо индекс-файла.

0
Автор поста оценил этот комментарий

Оба хороши.

Реальность куда разнообразней и "сказочней" бывает.

Автор поста оценил этот комментарий

Слишком много слов, для программиста. Синтаксический сахер вам в помощь.

Аналитик?

раскрыть ветку (2)
1
Автор поста оценил этот комментарий

Нет, я лид.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

А я сеньор ))

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества