Inżynieria danych i nasze zasady

Jakub, menedżer w inżynierii oprogramowania
Jakub in a conference room

Jakub dołączył do firmy w 2020 roku i jest Engineering Managerem w naszym dziale Product Data. W tym wpisie Jakub opowiada, w jaki sposób nasze wewnętrzne zasady pomagają globalnym zespołom programistów realizować projekty od opracowywania samej koncepcji do jej wdrożenia, a także jak radzić sobie z wyzwaniami charakterystycznymi dla pracy w inżynierii danych.

Zespół programistów w Goldman Sachs, podobnie do innych zespołów technologicznych, w swojej pracy kieruje się dziewięcioma zasadami. Stanowią one dla nas inspirację i pomagają nam podejmować właściwe decyzje i osiągać lepsze rezultaty. Z perspektywy osób zajmujących się inżynierią danych najbardziej istotne są następujące:

1. Ostrożność i dokładność - kiedy w naszej pracy pojawia się  niepewność, uwzględniamy ją, staramy się ją przewidzieć i opracowujemy rozwiązania odporne na błędy

2. Innowacje wdrażane etapami - wdrażanie innowacji następuje stopniowo, poprzez ciągłe uwzględnianie uwag od użytkowników końcowych, możliwemu dzięki regularnym aktualizacjom produktów. Dążymy do usprawnienia procesu wdrożeniowego w oparciu o wyznaczenie jasnych celów

3. Zaufanie to podstawa – błędy się zdarzają, to nieuniknione. To, co naprawdę lubię w naszym zespole, to jego chęć do wspólnego rozwiązywania problemów, wyciągania z nich wniosków i traktowania błędów jako katalizatorów rozwoju. Co najważniejsze, dzięki takiej kulturze zaufania i współpracy czujemy, że możemy swobodnie mówić o porażkach.

Co istotne, te zasady to nie tylko zbiór drogowskazów, ale stanowią one jednocześnie faktyczne wzorce postępowania w poszczególnych projektach.

Jako inżynierowie danych zajmujemy wyjątkową pozycję w naszym szerszym zespole Core Engineering. Z jednej strony koncentrujesz się na stosowaniu dobrych praktyk tworzenia oprogramowania, pracując z różnymi technologiami i frameworkami oraz kładąc nacisk na rozwój niezawodnych systemów. Z drugiej strony jesteś mocno zaangażowany w pracę z użytkownikami dostarczanych przez Ciebie danych, współpracując w celu wspierania różnych funkcjonalności umożliwiających tworzenie nowych rozwiązań biznesowych, a także koncentrując się na zachowaniu zgodności z wymaganiami regulacyjnymi. Biorąc pod uwagę ten układ, to, co robisz, ma bardzo konkretny cel i stawia Cię w pozycji, w której możesz mieć bezpośredni wpływ na biznes. Dzięki temu praca ta jest bardzo angażująca i satysfakcjonująca. Aby efektywnie działać w tym zmiennym środowisku, musisz być przygotowany na nieprzewidziane sytuacje.

Zarządzanie złożonym, newralgicznym systemem danych źródłowych nie byłoby możliwe bez ciągłej, stopniowej modernizacji. Rozwiązywanie kwestii związanych z długiem technicznym, aktualizowanie naszych baz danych do najnowszych wersji, przenoszenie procesów biznesowych z nieobsługiwanych już systemów operacyjnych i bibliotek oprogramowania, a także zwracanie szczególnej uwagi na bezpieczeństwo naszych danych, to tylko kilka z nieustannie towarzyszących naszej pracy elementów. Co więcej, jesteśmy w stałym procesie wdrażania nowych platform, a także konsolidacji naszych frameworków, narzędzi i rozwiązań do przetwarzania danych.

Pomimo dokładania wszelkich starań i zwracania szczególnej uwagi na to, by nasze rozwiązania działały prawidłowo w środowiskach produkcyjnych, błędy są nieuniknione. Goldman Sachs cechuje wspaniała kultura zaufania oparta na zespołowym rozwiązywaniu problemów. Liczba rzeczy, których nauczyliśmy się patrząc wstecz na to, jak mogliśmy ulepszyć nasze systemy i unikać błędów w przyszłości, jest naprawdę nieoceniona.

Wszystko to sprawia, że jestem przekonany co do tego, że Goldman Sachs to wspaniałe i wyjątkowe miejsce, które oferuje programistom doskonałe warunki do rozwoju i budowania swojej kariery. Jeśli jesteś chętny do nauki, chcesz rozwijać się w szybko zmieniającym się środowisku, dobrze się komunikujesz i możesz się pochwalić zdolnościami technicznymi, przyszłość należy do Ciebie!