Как откликнуться на вакансию мечты
Хорошая статья Максима Ильяхова о поиске работы https://megaplan.ru/letters/get-a-job. Примеры взяты про редакторов. Но статья будет полезна всем, кто захочет когда-нибудь пойти на собеседование. Вы узнаете, как правильно читать требования вакансии и откликаться на неё.
Хорошая статья Максима Ильяхова о поиске работы https://megaplan.ru/letters/get-a-job. Примеры взяты про редакторов. Но статья будет полезна всем, кто захочет когда-нибудь пойти на собеседование. Вы узнаете, как правильно читать требования вакансии и откликаться на неё.
Вопросы с собеседований по SQL
— что такое SQL
— какие виды связей бывают
— перечислить виды джоинов
— как используется ключевое слово having
— что такое ACID
— какие есть нормальные формы
— когда может понадобиться денормализация БД
— для чего нужны уровни изоляции
— какие феномены чтения бывают
— что такое SQL
— какие виды связей бывают
— перечислить виды джоинов
— как используется ключевое слово having
— что такое ACID
— какие есть нормальные формы
— когда может понадобиться денормализация БД
— для чего нужны уровни изоляции
— какие феномены чтения бывают
Книга по многопоточке
Если хотите прокачаться в многопоточке, то прочитайте Java Concurrency in Practice. В ней найдете основные концепции, которые актуальны и сейчас. Авторы книги - разработчики Java. Один из них, Даг Ли – создатель пакета java.util.concurrent. Книга на английском, но читается легко. Все примеры кода советую перепечатывать в Идее.
#книги
Если хотите прокачаться в многопоточке, то прочитайте Java Concurrency in Practice. В ней найдете основные концепции, которые актуальны и сейчас. Авторы книги - разработчики Java. Один из них, Даг Ли – создатель пакета java.util.concurrent. Книга на английском, но читается легко. Все примеры кода советую перепечатывать в Идее.
#книги
Вопросы по многопоточке
100 вопросов с ответами по Java Concurrency
https://github.com/arteam/100-Java-Concurrency-questions
100 вопросов с ответами по Java Concurrency
https://github.com/arteam/100-Java-Concurrency-questions
Почему не стоит работать в банке
Недавно кинули пост, в котором разработчик объясняет, почему его не интересуют вакансии в банковской сфере. Вот эти причины:
1. Банковская сфера - это уныло. Весь банковский софт - это либо типичный энтерпрайз со счетами, транзакциями, отчётами и т. п., либо торговля на бирже, сводящаяся к извращённым техникам написания одних и тех же алгоритмов с целью обойти конкурентов.
2. Отсутствие простора для творчества. Это вам не продукт, где я как программист могу сам придумывать и реализовывать фичи, и не социальная сеть, где на миллионах пользователей можно в режиме реального времени провести какое-нибудь исследование.
3. Правила, ограничения и бюрократия. Даже если айтишникам в банке, действительно, вольготней, чем остальному персоналу, не бывает такого, что в многотысячной компании какой-то отдел живёт совсем по своим правилам. Многоуровневый менеджмент, корпоративные политики и т. п. - так или иначе всё равно есть; об атмосфере стартапа можно забыть. Важный фактор, что в банке всё измеряется деньгами, а это неизбежно приводит к характерному стилю менеджмента.
4. Офис. Для меня, к примеру, офис - второй дом. Помимо работы в комфортных условиях я там завтракаю и обедаю, отмечаю праздники, играю в игры, занимаюсь спортом, участвую в семинарах и т. д. В интернете немало прикольных статей на тему "офисы IT компаний". Покажите что-нибудь похожее про офисы банков!
5. Что делает банковский софт? Помогает банку зарабатывать деньги. Только и всего! А я не хочу тратить свою жизнь на то, чтобы писать софт, просто помогающий другим наживаться. В этом смысле даже работа на заводе привлекательней: ведь там производятся реальные блага для человечества. А я хочу делать мир лучше. Совершенствовать сети и протоколы связи, давать людям новые способы общения, улучшать алгоритмы хранения, передачи и поиска информации, автоматизировать повседневную деятельность, разрабатывать открытые решения, которые принесут пользу не только нашей компании, но и другим.
6. Наконец, инновации. Я хочу работать в компании, которая не только использует передовые технологии, но и сама двигает IT индустрию вперёд. Творить будущее. Это делают именно IT компании, банки лишь пользуются плодами их изобретений.
#компании #банки
Недавно кинули пост, в котором разработчик объясняет, почему его не интересуют вакансии в банковской сфере. Вот эти причины:
1. Банковская сфера - это уныло. Весь банковский софт - это либо типичный энтерпрайз со счетами, транзакциями, отчётами и т. п., либо торговля на бирже, сводящаяся к извращённым техникам написания одних и тех же алгоритмов с целью обойти конкурентов.
2. Отсутствие простора для творчества. Это вам не продукт, где я как программист могу сам придумывать и реализовывать фичи, и не социальная сеть, где на миллионах пользователей можно в режиме реального времени провести какое-нибудь исследование.
3. Правила, ограничения и бюрократия. Даже если айтишникам в банке, действительно, вольготней, чем остальному персоналу, не бывает такого, что в многотысячной компании какой-то отдел живёт совсем по своим правилам. Многоуровневый менеджмент, корпоративные политики и т. п. - так или иначе всё равно есть; об атмосфере стартапа можно забыть. Важный фактор, что в банке всё измеряется деньгами, а это неизбежно приводит к характерному стилю менеджмента.
4. Офис. Для меня, к примеру, офис - второй дом. Помимо работы в комфортных условиях я там завтракаю и обедаю, отмечаю праздники, играю в игры, занимаюсь спортом, участвую в семинарах и т. д. В интернете немало прикольных статей на тему "офисы IT компаний". Покажите что-нибудь похожее про офисы банков!
5. Что делает банковский софт? Помогает банку зарабатывать деньги. Только и всего! А я не хочу тратить свою жизнь на то, чтобы писать софт, просто помогающий другим наживаться. В этом смысле даже работа на заводе привлекательней: ведь там производятся реальные блага для человечества. А я хочу делать мир лучше. Совершенствовать сети и протоколы связи, давать людям новые способы общения, улучшать алгоритмы хранения, передачи и поиска информации, автоматизировать повседневную деятельность, разрабатывать открытые решения, которые принесут пользу не только нашей компании, но и другим.
6. Наконец, инновации. Я хочу работать в компании, которая не только использует передовые технологии, но и сама двигает IT индустрию вперёд. Творить будущее. Это делают именно IT компании, банки лишь пользуются плодами их изобретений.
#компании #банки
О работе в банках
Предыдущий пост спорный, поэтому поделюсь своими мыслями. Я не работал в банке, но по рассказам коллег сложилось следующее впечатление. Банк - бездушная неповоротливая корпорация, где любое решение принимается очень медленно. Часто на проекте разработчики используют старые технологии, а ресурсы на рефакторинг начальство не выделяет.
Есть и новые проекты, где программисты работают с современным стеком и решают интересные задачи. На такие проекты сложно попасть и тяжело на них работать.
Итог. Для первой работы банк - гуд. Главное, чтобы были сильные коллеги, у которых можно учиться. Кто на опыте, кропотливее относитесь к выбору проекта.
#компании #банки
Предыдущий пост спорный, поэтому поделюсь своими мыслями. Я не работал в банке, но по рассказам коллег сложилось следующее впечатление. Банк - бездушная неповоротливая корпорация, где любое решение принимается очень медленно. Часто на проекте разработчики используют старые технологии, а ресурсы на рефакторинг начальство не выделяет.
Есть и новые проекты, где программисты работают с современным стеком и решают интересные задачи. На такие проекты сложно попасть и тяжело на них работать.
Итог. Для первой работы банк - гуд. Главное, чтобы были сильные коллеги, у которых можно учиться. Кто на опыте, кропотливее относитесь к выбору проекта.
#компании #банки
Евгений Трифонов прислал статьи про банковские офисы. Сбербанк - https://vc.ru/21118-sber-new-office, Альфа-банк - https://habr.com/company/alfa/blog/233291/, Тинькофф - https://rb.ru/story/atmosfera-tinkoff/
А тут https://habr.com/company/dbtc/blog/319784/ Дев Менеджер рассказывает, как он работает в Дойче Банке. Про легаси код, опытных коллег и дальнейший рост.
#компании #банки #офисы
А тут https://habr.com/company/dbtc/blog/319784/ Дев Менеджер рассказывает, как он работает в Дойче Банке. Про легаси код, опытных коллег и дальнейший рост.
#компании #банки #офисы
vc.ru
Штаб-квартира: Новый московский офис «Сбербанка»
В Москве открылся новый офис «Сбербанка», в который переезжает часть сотрудников банка и его «дочки» — компании «Сбербанк-Технологии». Фотографиями поделилась архитектурная студия IND Office, занимавшаяся проектированием и дизайном помещений.
В марте был в Мюнхене и познакомился там с java разработчиком. Он переехал с семьёй в Германию из Украины два года назад.
Сейчас готовлю для канала интервью с Сашей (так его зовут). Он расскажет, как получил оффер в Мюнхене, как обустроился, сколько получают и сколько тратят разработчики в самом дорогом городе Германии.
Если хотите задать Саше вопрос, пишите мне в личку @zybkin
Сейчас готовлю для канала интервью с Сашей (так его зовут). Он расскажет, как получил оффер в Мюнхене, как обустроился, сколько получают и сколько тратят разработчики в самом дорогом городе Германии.
Если хотите задать Саше вопрос, пишите мне в личку @zybkin
Подробный ответ в статье, которую сам недавно заюзал https://vladmihalcea.com/the-best-way-to-map-a-many-to-many-association-with-extra-columns-when-using-jpa-and-hibernate/
Что такое JSON
Полное название JavaScript Object Notation. Джейсон нужен для представления объекта в виде строки. Такое представление часто используют разработчики для передачи данных с фронта на сервер и в обратную сторону.
Структура Джейсона - это набор пар ключ: значение. Простой пример:
Значениями могут быть:
— Объект
— Массив
— Строка в двойных кавычках
— Число
— Логическое значение
—
Полное название JavaScript Object Notation. Джейсон нужен для представления объекта в виде строки. Такое представление часто используют разработчики для передачи данных с фронта на сервер и в обратную сторону.
Структура Джейсона - это набор пар ключ: значение. Простой пример:
{ "firstName": "Иван" }
. Значениями могут быть:
— Объект
{ ... }
— Массив
[ ... ]
— Строка в двойных кавычках
— Число
— Логическое значение
true
/false
—
null
Пример посложнее:
{
"orderID": 123,
"shopperName": "Ваня Ибрагимов",
"shopperEmail": "[email protected]",
"contents": [
{
"productID": 34,
"productName": "Boroda",
"quantity": 1
},
{
"productID": 56,
"productName": "Giroskuter",
"quantity": 2
}
],
"orderCompleted": true,
"comment": null
}
Java Developer via @vote
Ситуация. Вы ходили по собеседованиям и получили три оффера. У каждой компании свой плюс: тимлид, зарплата, технологии. Что повлияет на ваш выбор?
anonymous poll
Крутые технологии – 223
👍👍👍👍👍👍👍 44%
Опытный тимлид – 171
👍👍👍👍👍 34%
Высокая зарплата – 113
👍👍👍👍 22%
👥 507 people voted so far.
anonymous poll
Крутые технологии – 223
👍👍👍👍👍👍👍 44%
Опытный тимлид – 171
👍👍👍👍👍 34%
Высокая зарплата – 113
👍👍👍👍 22%
👥 507 people voted so far.
5 принципов хорошего программиста
Два года назад прочитал крутую статью "как повысить продуктивность" [https://habr.com/post/299/]. Я переформулировал её в "5 принципов хорошего программиста", которым стараюсь постоянно следовать. Вот эти принципы:
1. Использовать поиск. Не ищите глазами нужный файл, текст, строку. Пользуйтесь функциями поиска везде, где это возможно.
2. Автоматизировать. Если какое-то действие повторяете больше 10 раз, его стоит автоматизировать.
3. Учить скриптовые языки. Python, Perl, Bash - эти парни облегчают жизнь программистам, если умеешь ими пользоваться.
4. Освоить IDE. IDE или среда разработки - оружие разработчика. А чтобы владеть ею мастерски, изучайте горячие клавиши.
5. Саморазвиваться. Выделять каждый день время на изучение новых технологий. Когда я не развиваюсь, то чувствую, что деградирую.
Хороший программист пишет код за минимальное время, отлично знает свою IDE, развивается и автоматизирует то, что приходится часто повторять.
Два года назад прочитал крутую статью "как повысить продуктивность" [https://habr.com/post/299/]. Я переформулировал её в "5 принципов хорошего программиста", которым стараюсь постоянно следовать. Вот эти принципы:
1. Использовать поиск. Не ищите глазами нужный файл, текст, строку. Пользуйтесь функциями поиска везде, где это возможно.
2. Автоматизировать. Если какое-то действие повторяете больше 10 раз, его стоит автоматизировать.
3. Учить скриптовые языки. Python, Perl, Bash - эти парни облегчают жизнь программистам, если умеешь ими пользоваться.
4. Освоить IDE. IDE или среда разработки - оружие разработчика. А чтобы владеть ею мастерски, изучайте горячие клавиши.
5. Саморазвиваться. Выделять каждый день время на изучение новых технологий. Когда я не развиваюсь, то чувствую, что деградирую.
Хороший программист пишет код за минимальное время, отлично знает свою IDE, развивается и автоматизирует то, что приходится часто повторять.
Code Conventions
Code convetions или соглашения по написанию кода нужны для его читаемости. Любую строчку кода можно написать по-разному. Code conventions приводят проект к единому стилю, который известен каждому программисту. Не должно получиться так, что человек переходя с одного проекта на другой страдал, привыкая к новому стилю написания.
Для каждого языка программирования разработчики используют свои соглашения. На большинстве Java-проекта часто принимают за основу Google Java Style Guide https://google.github.io/styleguide/javaguide.html
IntelliJ IDEA умеет сама поправлять код по Code Style. Для этого используйте комбинацию
Code convetions или соглашения по написанию кода нужны для его читаемости. Любую строчку кода можно написать по-разному. Code conventions приводят проект к единому стилю, который известен каждому программисту. Не должно получиться так, что человек переходя с одного проекта на другой страдал, привыкая к новому стилю написания.
Для каждого языка программирования разработчики используют свои соглашения. На большинстве Java-проекта часто принимают за основу Google Java Style Guide https://google.github.io/styleguide/javaguide.html
IntelliJ IDEA умеет сама поправлять код по Code Style. Для этого используйте комбинацию
CTRL+ALT+L
#CleanCode