Najpopularniejsze pytania i odpowiedzi dotyczące wywiadu Goldman Sachs na rok 2022

Opublikowany: 2022-09-21

Goldman Sachs Group, Inc. jest jedną z wiodących globalnych instytucji finansowych, która oferuje szeroki zakres usług finansowych zróżnicowanej bazie klientów, która obejmuje instytucje finansowe, korporacje, osoby fizyczne i rządy w bankowości, zarządzaniu inwestycjami, papierach wartościowych i bankowości konsumenckiej . Założona w 1869 roku z siedzibą w Nowym Jorku, Goldman Sachs ma biura w wielu głównych centrach finansowych na całym świecie. Celem organizacji jest pobudzenie globalnego wzrostu gospodarczego oraz możliwości finansowych.

Goldman Sachs mobilizuje również swoich ludzi i zasoby w celu zwiększenia sukcesu swoich klientów, poszerzenia indywidualnego dobrobytu, a także przyspieszenia postępu gospodarczego dla wszystkich, czerpiąc z ponad 150-letniego doświadczenia w pracy z największymi organizacjami, instytucjami i przedsiębiorcami na świecie. Według Goldman Sachs współpraca, praca zespołowa i uczciwość zapewniają pracownikom idealne środowisko do osiągania jak najlepszych wyników dla swoich klientów.

Zawsze szuka profesjonalistów, którzy w tym środowisku rozwijają się z pasją, szybkim myśleniem i umiejętnościami komunikacyjnymi, które mają pierwszeństwo przed precyzyjnymi kwalifikacjami. Tak więc, niezależnie od tego, czy jesteś jeszcze w szkole, niedawnym absolwentem, czy masz kilka lat za pasem, Goldman Sachs chce usłyszeć od ciebie, jeśli jesteś zainteresowany pracą tam.

Program studiów podyplomowych: pełne tworzenie stron internetowych

we współpracy z Caltech CTME Zarejestruj się teraz
Program studiów podyplomowych: pełne tworzenie stron internetowych

Proces rekrutacji Goldman Sachs

Przebieg rozmowy kwalifikacyjnej

Kandydaci będą analizowani pod kątem programowania i umiejętności analitycznych. W procesie rekrutacyjnym firma przeprowadza generalnie cztery rundy:

  • Test online
  • Wywiad techniczny
  • Wywiad HR

Rozmowy kwalifikacyjne

Test online

Sekcje testu oceniającego online Goldman Sachs są następujące:

  • Ilościowy test umiejętności: Ten test zawiera pytania dotyczące obliczeń numerycznych i rozumowania. Kandydaci muszą przygotować się na pytania oparte na zyskach i stratach, liczbach, prawdopodobieństwie, stosunku, czasie i prędkości, odległości, średniej, permutacji i kombinacji. Umiejętności matematyczne kandydatów będą oceniane za pomocą łamigłówek i serii diagramów.
  • Rozumowanie: Ta sekcja zawiera cytaty dotyczące rozumowania diagramowego, rozumowania abstrakcyjnego i logicznego rozumowania. Muszą również przygotować pytania dotyczące kodowania, dekodowania, uporządkowania danych, algorytmów, interpretacji danych, wejścia, wyjścia, obwodów, schematów blokowych itp.
  • Umiejętności werbalne: Ta sekcja dotyczy czytania ze zrozumieniem. Musisz przećwiczyć tematy na podstawie pominięć, błędów i artykułów.
  • Sekcja techniczna: W tym teście musisz odpowiedzieć na pytania dotyczące:
    • Informatyka
    • Zaawansowane umiejętności
    • Kodowanie
    • Programowanie konkurencyjne
    • Subiektywny

Wywiad techniczny

Kandydaci, którzy zdadzą test online, zostaną wezwani na rozmowę techniczną twarzą w twarz. Celem przeprowadzenia wywiadu technicznego jest ocena Twoich umiejętności technicznych związanych z konkretną rolą, której szukasz oraz odkrycie, w jaki sposób analizujesz i rozwiązujesz stresujące sytuacje.

Ankieter oceni również Twoje umiejętności rozwiązywania problemów. Zostaniesz zapytany o swoje poprzednie prace i projekty, a także o to, co zrobiłeś i jak wykorzystałeś technologię, a także o Twój poziom sukcesu. Przygotuj się, poznając zasady informatyki.

Goldman Sachs poszukuje kandydatów, którzy posiadają silną wiedzę koncepcyjną w zakresie przynajmniej jednego języka programowania, takiego jak Java, C/C++, JavaScript lub Python. Twoje postępy we wcześniejszych rundach, Twój profil pracy, Twoje doświadczenie i wymagania firmy będą miały wpływ na liczbę odbytych rozmów technicznych. W większości przypadków każdy kandydat przejdzie dwie rundy rozmów technicznych.

Wywiad HR

Po przejściu rozmowy technicznej zostaniesz zaproszony na rundę HR. Celem przeprowadzenia wywiadu HR jest przeanalizowanie osobowości kandydata, jego pochodzenia, osobowości, mocnych i słabych stron w celu ustalenia, czy nadaje się on do tej konkretnej roli. Dlatego powinieneś być dobrze przygotowany do rozmowy kwalifikacyjnej.

Oceń swoje CV, aby upewnić się, że dodałeś wszystkie niezbędne dane osobowe i że podane przez Ciebie dane są dokładne zgodnie z Twoją najlepszą wiedzą. Mogą również zapytać o historię Goldman Sachs, w tym o czas powstania firmy, a także o jej cele, przekonania i strukturę organizacyjną. Przygotuj się na wszelkie pytania dotyczące Twojego CV. W swoich odpowiedziach wyjaśnij swoje zainteresowanie zawodem i co Cię najbardziej motywuje.

Oto niektóre z jego przykładowych pytań:

  • Opowiedz mi o sobie (Powinieneś zacząć opowiadać o historii swojej rodziny, a następnie wyjaśnić swoje wykształcenie i awans zawodowy)
  • Czy możesz przenieść się do innych części Indii?
  • Gdzie widzisz siebie po pięciu latach?
  • Dlaczego miałbyś cię zatrudnić?
  • Opowiedz mi o swoich stażach i realizowanych projektach.
  • Co skłoniło Cię do poszukiwania nowej pracy?

Pełny kurs dla programistów Java

We współpracy z HIRIST i HackerEarth ODKRYJ KURS
Pełny kurs dla programistów Java

Pytania do wywiadu technicznego Goldman Sachs dla doświadczonych i świeżo upieczonych

1. Co to jest wielowątkowość w Javie? Jak powstają wątki?

Wielowątkowość to funkcja w Javie, która umożliwia jednoczesne wykonywanie dwóch lub więcej sekcji programu w celu maksymalizacji wydajności procesora. Jest to również proces, po którym następuje jednoczesne wykonywanie wielu wątków.

Wątki powstają przy użyciu dwóch różnych mechanizmów:

  • Rozszerzenie klasy wątku: Stworzymy klasę rozszerzenia java.lang. Wątek to rodzaj wątku. Metoda run() klasy Thread jest zastępowana przez tę klasę. Życie wątku zaczyna się od metody run(). Inicjujemy obiekt naszej nowej klasy i wywołujemy funkcję start(), aby rozpocząć wykonywanie wątku. Funkcja run() obiektu Thread jest wywoływana przez Start().
  • Wykorzystanie interfejsu uruchomieniowego w praktyce: Tworzymy nową klasę do implementacji interfejsu java.lang. Zastąp metodę run() interfejsu. Następnie budujemy obiekt Thread i wywołujemy na nim metodę start().

Zaletą wielowątkowości są:

  • Ponieważ wątki wykorzystują współdzieloną przestrzeń pamięci, pomaga to zaoszczędzić pamięć.
  • Wątki są samowystarczalne, co pozwala na jednoczesne wykonywanie wielu zadań, oszczędzając czas.
  • Ponieważ wątki są niezależne, wyjątek w jednym wątku nie ma wpływu na inne wątki.

2. Wyjaśnij hashCode() i equals() w Javie.

Struktura kolekcji Java zawiera HashMap. HashMap wykorzystuje technikę haszowania. Proces przekształcania elementu w wartość całkowitą nazywa się haszowaniem. Wartość całkowita wspomaga indeksowanie i szybkość wyszukiwania. Jest odpowiedzialny za projektowanie interfejsu użytkownika mapy. Przechowuje informacje w parze klucz/wartość. Węzeł w HashMap jest reprezentowany przez klasę, która ma tablicę węzłów. Wewnętrznie przechowuje klucz i wartość w tablicy i strukturze danych LinkedList. HashMap zawiera cztery pola.

  • hashCode() to funkcjonalność w klasie obiektów. Zwraca całkowitą reprezentację odwołania do pamięci obiektu. Wartość zwracana przez metodę określa numer kubełka. Numer segmentu reprezentuje lokalizację elementu na mapie. Kod skrótu Null Key to 0.
  • equals() to funkcja, która służy do porównywania dwóch obiektów i określa, czy są one równe. Klucz jest porównywany w celu sprawdzenia, czy są one równoważne. Jest to metoda należąca do klasy Object. Można to ominąć. Jeśli przesłonisz metodę equals(), musisz również przesłonić metodę hashCode().

3. Wyjaśnij ostatnie słowo kluczowe w Javie.

Słowo kluczowe final służy do ograniczenia użytkownika w Javie. W Javie słowo kluczowe final może być używane na wiele sposobów. Zmienna, metoda lub klasa mogą korzystać z końcowego słowa kluczowego. Zmienną, metodę lub klasę można przypisać tylko wtedy, gdy zostanie wyznaczona jako ostateczna.

  • Klasa końcowa: Klasa, która została ogłoszona jako ostateczna, nie może zostać przedłużona.
  • Zmienna końcowa: nie będzie można zmienić wartości zmiennej, jeśli oznaczysz ją jako ostateczną.
  • Metoda końcowa: klasa, która została zadeklarowana jako ostateczna, nie może zostać rozszerzona.

Pełny kurs dla programistów internetowych

Aby zostać ekspertem w MEAN Stack View Course
Pełny kurs dla programistów internetowych

4. Jaka jest różnica między klasami StringBuffer i StringBuilder w kontekście Javy?

Łańcuchy są obiektami Javy, które wykorzystują tablicę znaków jako swoją wewnętrzną pamięć masową. Ponieważ tablice są niezmienne (nie mogą rosnąć), łańcuchy są niezmienne. Nowy String jest tworzony za każdym razem, gdy użytkownik dokona zmiany w Stringu. Z drugiej strony Java zapewnia szereg klas do manipulowania łańcuchami. StringBuffer i StringBuilder to dwa przykłady tego typu klas.

5. Wyjaśnij zbieranie śmieci w Javie.

Odśmiecanie to proces skanowania pamięci sterty, określania, które elementy są używane, a które nie, a następnie usuwania nieużywanych.

Obiekt, do którego się odwołuje, znany również jako obiekt używany, wskazuje, że jest nadal używany przez jakąś część aplikacji. Obiekty bez odwołań, zwane również obiektami nieużywanymi, to obiekty, które nie są już używane przez żadną część oprogramowania. W ten sposób można odzyskać pamięć obiektu, do którego nie ma odniesień. Najważniejszą zaletą zbierania śmieci jest to, że uwalnia nas od żmudnego zadania ręcznego przydzielania pamięci i cofania alokacji, umożliwiając nam skoncentrowanie się na zadaniu.

Odśmiecacz nie będzie w stanie zniszczyć obiektu, który uznamy za śmietnik. Gdy JVM uruchamia program Garbage Collector, tylko obiekt jest niszczony. Nie wiemy jednak, kiedy JVM uruchomi Garbage Collector.

6. Wyjaśnij różnicę między interfejsem a klasą abstrakcyjną w Javie.

Słowo kluczowe abstract jest modyfikatorem bez dostępu do klas i metod. Klasa abstrakcyjna to typ klasy, którego nie można użyć do tworzenia czegokolwiek (aby uzyskać do niej dostęp, musi być odziedziczona z innej klasy). Jeśli chodzi o metody abstrakcyjne, nie mają one treści i mogą być używane tylko w klasach abstrakcyjnych. Ciało jest dostarczane przez podklasę (odziedziczoną z).

Interfejs jest projektem klasy w Javie. Posiada stałe statyczne i metody abstrakcyjne. Interfejs jest narzędziem do osiągania abstrakcji w Javie. W interfejsie Java dozwolone są tylko metody abstrakcyjne, a nie treści metod. Jest używany w Javie do osiągnięcia abstrakcji i licznych dziedziczeń. Interfejsy mogą mieć abstrakcyjne metody i zmienne, mówiąc inaczej. Obecność treści metody jest zabroniona.

7. Jak zaimplementować dynamiczny i statyczny polimorfizm w C++?

Polimorfizm opisuje istnienie wielu wersji czegokolwiek. W prostych słowach polimorfizm odnosi się do możliwości wyświetlania wiadomości na wiele sposobów. Można go sklasyfikować na dwa sposoby na podstawie czasu potrzebnego na rozwiązanie wywołania procedury:

  • Wywołanie (wywołanie) funkcji jest rozwiązywane w czasie kompilacji, co jest znane jako polimorfizm statyczny. Można to osiągnąć poprzez przeciążenie systemu.
    • Przeciążanie operatorów: Przeciążanie operatorów jest również możliwe w C++. Aby połączyć dwa łańcuchy, możemy użyć operatora klasy string ('+'). Zadaniem operatora dodawania jest dodawanie dwóch operandów razem. Kiedy operator „+” jest stosowany do operandów całkowitych i łańcuchowych, dodaje je do siebie, jednak po zastosowaniu do operandów łańcuchowych łączy je.
    • Przeciążanie funkcji: Gdy istnieje kilka funkcji o tej samej nazwie, ale różnych parametrach, nazywa się to przeciążeniem. Funkcje mogą zostać przeciążone wraz ze zmianą liczby argumentów lub typu argumentów.
  • Rozpoznawanie wywołania funkcji w czasie wykonywania jest określane jako dynamiczny polimorfizm. Jest zaimplementowany w C++ przy użyciu metody dziedziczenia Overriding.
    • Zastępowanie funkcji: Zastępowanie funkcji występuje, gdy klasa pochodna definiuje jedną z funkcji składowych klasy bazowej. Stwierdza się, że podstawowa funkcja zostanie nadpisana.

8. Wyjaśnij różnice między wskaźnikami a zmiennymi referencyjnymi w C++.

Wskaźnik to zmienna, która śledzi adres pamięci innej zmiennej.

Odwołanie to alias już istniejącej zmiennej. Nie można zmienić odwołania do zainicjowanej zmiennej, aby odwoływać się do innej zmiennej. W rezultacie referencja i stały wskaźnik są podobne.

Nowy kurs: pełny rozwój stosu dla początkujących

Naucz się Git Command, Angular, NodeJS, Maven i innych Zarejestruj się teraz
Nowy kurs: pełny rozwój stosu dla początkujących

9. Czy konstruktor może być prywatny w C++?

Funkcja Object() { [kod natywny] } jest funkcją składową klasy, która odpowiada za inicjowanie obiektów klasy. Funkcja Object() { [kod natywny] } jest wywoływana automatycznie podczas tworzenia obiektu klasy w C++. Konstruktory są zwykle definiowane w sekcji publicznej klasy. W rezultacie powstaje pytanie, czy można zdefiniować konstrukcję w prywatnej części klasy. Odpowiedź brzmi: tak. Funkcję Object() { [kod natywny] } można zdefiniować w prywatnej sekcji klasy.

  • Jeśli chcemy uniknąć tworzenia instancji klasy przez kogokolwiek innego niż zaprzyjaźnioną klasę, możemy użyć klasy zaprzyjaźnionej.
  • Możemy użyć wzorca Singleton do skonstruowania klasy singletona, jeśli zajdzie taka potrzeba. Oznacza to, że system steruje pojedynczym elementem lub ograniczoną liczbą obiektów, a nie kilkoma obiektami tej samej klasy.
  • Różne konstruktory wyróżniają się listami parametrów, ponieważ mają taką samą nazwę jak klasy; jednak jeśli istnieje wiele konstruktorów, implementacja może stać się podatna na błędy. Zgodnie z idiomem Named Constructor Idiom należy zadeklarować wszystkie konstruktory klasy w sekcji prywatnej lub chronionej, a następnie utworzyć publiczne funkcje statyczne w celu uzyskania obiektów klasy.

10. Wyjaśnij czerwono-czarne drzewo w kontekście struktur danych.

Różne konstruktory wyróżniają się listami parametrów, ponieważ mają taką samą nazwę jak klasy; jeśli jednak istnieje wiele konstruktorów, implementacja może stać się podatna na błędy.

Zgodnie z idiomem Named Constructor Idiom należy zadeklarować wszystkie konstruktory klasy w sekcji prywatnej lub chronionej, a następnie utworzyć publiczne funkcje statyczne w celu uzyskania obiektów klasy. Drzewa te mają podobny ślad w pamięci jak standardowe (bez koloru) drzewo wyszukiwania binarnego, ponieważ każdy węzeł potrzebuje tylko jednego bitu pamięci do przechowywania informacji o kolorze.

Jeśli chcesz zdobyć umiejętności wymagane do pracy w wymagającej, satysfakcjonującej i dynamicznej roli IT - wspieramy Cię! Odkryj nieskończone możliwości dzięki temu innowacyjnemu kursowi podyplomowemu w ramach pełnego stosu Web Development opracowanego przez naszych partnerów w Caltech CTME. Zapisz się już dziś!

Wniosek

Nie ma znaczenia, czy wywiad Goldman Sachs jest trudny czy łatwy. Im bardziej przygotowujesz się do rozmów, tym większe masz szanse na sukces. Dowiedz się wszystkiego o rozmowach kwalifikacyjnych, w tym o etapach, rundach i pytaniach. Całkowicie zrozum rolę, w tym to, czego chcą od ciebie, zestawy umiejętności, których będziesz potrzebować, i potrzebne poświadczenia.

Możesz także zdecydować się na kursy takie jak PGP Full Stack Web Developer - MEAN Stack. Jako programista MEAN stack, to szkolenie pomoże Ci rozwinąć karierę. W ramach tego programu nauczania Full Stack MEAN Developer będziesz uczyć się najważniejszych umiejętności, takich jak MongoDB, Express.js, Angular i Node.js („MEAN”), a także GIT, HTML, CSS i JavaScript, aby tworzyć i wdrażać interaktywne aplikacje I usług.