Пропустити навігацію EPAM

Java-вебінар: трейсінг у мікросервісах та значення пошукових сервісів для сучасного бізнесу

Роман Лисенко

Software Engineering Manager

Олег Файзулін

Software Engineering Manager

Юрій Шуліга

Solution Architect
Думка експерта
  • Microservices
  • Java
  • Solution Architecture

30 квітня відбувся черговий вебінар для Java-інженерів, де ми поговорили з трьома досвідченими спікерами, фахівцями з багаторічним досвідом, що співпрацюють з EPAM, про відстеження в мікросервісах, про пошукові системи в структурі сучасних підприємств та про те, як можна залишатися продуктивними під час роботи вдома.

Багато хто з вас вже відчув на собі, що робота з дому може виявитися не такою простою, як здавалося з початку. Про те, як зробити свою роботу якомога більш комфортною та ефективною поговорили в першому блоці, ведучим якого був Роман Лисенко, який співпрацює з EPAM у якості Software Engineering Manager.

Зокрема, надзвичайно корисним був досвід та поради Романа щодо роботи з власною ефективністю. Адже це - комплексний показник, і забезпечується він декількома складовими. Наприклад, “efficient” та “effective” — зовсім не одне й те саме. Але що означає кожне з понять? “Efficiency” — це здатність робити речі швидко, а “effectiveness” — робити їх правильно. І кожен з цих показників впливає на нашу ефективність. А, отже, щоб працювати найбільш ефективно, потрібно використовувати відповідні та коректні інструменти.

Отже, щоб оптимізувати “efficiency” Роман радить використовувати інструменти та застосунки, що пришвидшують або автоматизують ваші робочі процеси, а от для підвищення “effectiveness” доведеться читати книжки, працювати над скілами та навіть спілкуватися з колегами по відеозв’язку.

Окрім цього, обговорили:

  • те, як ми реагуємо на зміни, як наша продуктивність змінюється з часом у нових обставинах і що з цим робити; 
  • що таке емоційний інтелект, як правильно його розвивати і яким чином справлятися з різними емоціями, що виникають у нас під час роботи вдома під час карантину; 
  • в чому відмінності між робочою дисципліною і самодисципліною, чому відмовляти - це нормально і як помідори допомагають у тайм-менеджменті.

Наступним був блок від Олега Файзуліна, Software Engineering Manager, де, в першу чергу, ми спробували розібратися, що ж такого є в мікросервісах і чому вони наразі стають певним стандартом для значної частини програмного забезпечення для бізнесу. Олег розповів цікаву і досить повчальну історію про програміста Джона, якому випала чудова нагода спробувати себе у якості архітектора на новому великому проєкті. Окрім Джона над проєктом працювала велика кількість розрізнених команд, а в компанії пропагувалася  spotify engenireeng, тож кожна обрала ту технологію, яка найбільше їй подобалася. І все було чудово, аж поки найкращий у світі продукт (на думку Джона, звичайно ж) не зарелізився. Не так сталося, як гадалося, продукт працював повільно і з помилками, а, на додачу - іще з операційними вадами. Але Джон не розгубився і швиденько домовився з командами про всі необхідні фікси. Новий реліз і… знову халепа. Фікси, які запланував Джон, спрацювали зовсім не так, як очікувалося: працювали рандомно, залишали показники на тому самому рівні, що і до фіксів, або і зовсім виявилися коштами, марно витраченими на непотрібний хардвар. Чому так сталося, як гадаєте? Вірно, саме до цього призводить недостатня прозорість та розуміння внутрішніх процесів. Ось вам невеличкий спойлер: в кінці історії таки трапився гепі-енд, але Джону довелося для цього багато чому навчитися. Усі деталі можете дізнатися, якщо передивитеся відео з вебінару. Там ми, разом із Олегом ознайомилися з таким поняттям, як OpenTelemetry та детально й наочно розібрали детальний прикладний кейс про інструменти для розв'язання питань трейсінгу через мікросервіси, побудовані за допомогою різних технологій.

Завершальним у цій зустрічі став блок від Юрія Шуліги, Solution Architect. Він продовжив тему мікросервісів, але вже у розрізі пошукових сервісів та їх значення для сучасних бізнесів, зокрема, для підприємств роздрібної торгівлі.

Знаєте, яка річ є основною у пошуку? Так, вірно: правильно сформульоване питання, яке на третину забезпечує успішність виконання пошукового запиту. За інші дві третини відповідають коректна індексація бази даних і релевантна видача результатів.

Отже, щоб забезпечити успішне виконання запиту, спершу варто попрацювати з каналами вводу: коректно спроєктувати API, причому варто врахувати не тільки “людські” запити, але і синтетичні, додати до нього набір модифікаторів, фільтри впорядкування, максимально скоротити респонс тайм тощо. Окрім цього надзвичайно важливо вже на початку розуміти, якою мовою вводить запит користувач, а ще - правильно визначати, яка частина запиту є важливою, а яка - не дуже.

Надалі розглянули основні сучасні проблеми та майбутні тенденції, а саме:

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

І, звичайно ж, не могли пройти повз такі теми, як Big Data та Machine Learning, і те, як з їхньою допомогою перетворити пошук на інструмент продажів або сервіс.

Якщо для вас теж важливо перманентно розвиватися, отримувати нові знання та вдосконалюватися - долучайтеся до нас, бо ми сповідуємо одні й ті самі цінності!

Слідкувати за новинами EPAM можна на наших сторінках у Facebook, LinkedIn, Twitter або Youtube, а ще можете слідкувати за розкладом наших івентів у нас на сайті - https://www.youtube.com/c/epamuacareer/

Дякуємо, що ви з нами!