Ostatnio robiłem zadanie rekrutacyjne na stanowisko Juniora (nie wymagali nawet żadnego doświadczenia) z takmi wymaganiami:
As an api consumer, given username and header “Accept: application/json”, I would like to list all his github repositories, which are not forks. Information, which I require in the response, is:
Repository Name
Owner Login
For each branch it’s name and last commit sha
As an api consumer, given not existing github user, I would like to receive 404 response in such a format:
{ “status”: ${responseCode}
“Message”: ${whyHasItHappened} }
As an api consumer, given header “Accept: application/xml”, I would like to receive 406 response in such a format:
{
“status”: ${responseCode}
“Message”: ${whyHasItHappened} } Notes: Please full-fill the given acceptance criteria, delivering us your best code compliant with industry standards.
Please use [https://developer.github.com/v3](https://developer.github.com/v3) as a backing API
Application should have a proper README.md file Tutaj zrobione to zadnie przeze mnie: https://github.com/Sampeteq/github-task Dzisiaj rano dzwoni do mnie rekruter i dosłownie zjechał mnie ostro za takie rzeczy jak: 1.Paginacja, której nie było w wymaganiach a ją dodałem. Myślałem, że to standard w każdym API, tym bardziej, że to API GItHuba zwracało czasami kilkadziesiąt wyników. 2.Mappowanie odpowiedzi z WebClienta na Stringa zamiast na jakąś klasę mimo, że później jest to robione. 3.Użycie ObjectMappera do mapowania jsona z WebClient na obiekt Javowy. Powiedział, że to mnie definitywnie skreśla 4.Utworzenie WebClienta za pomocą create() zamiast utworzenia beana. Powiedział, że widać, że nie znam Springa 4. Użycie MockMVC w testach integracyjnych controllera zamiast WireMocka czy czegoś podobnego, nazwał to zbrodnią
Jak to oceniacie? Czy rekruter miał racje i takie błędy dyskwalifikują kandydata czy może moje rozwiązanie jest w miarę ok i rekruter przesadził? Nie ukrywam, że byłem w sporym szoku. Nie bardzo mogłem wejść z nim w polemikę, bo telefon zerwał mnie z łóżka i byłem zaspany #programowanie #programista15k #java #pracbaza
1. Jeśli nie było w wymaganiach to nie należało wychodzić przed szereg, bo w praktyce zrobiłeś API które nie jest kompatybilne z wymaganiami, szczególnie, że te paginacje nie maja u ciebie wartości domyślnych i pewnie API sie sypnie jak ich nie podasz :( 2. Jest to trochę ćpanie co tam napisałeś. Masz przez to kupę niepotrzebnego kodu (cały ten GithubMapper nie ma sensu bytu). Z tego twojego klienta/adaptera chciałbyś
@Nofenak Ciesz się, że ten frustrat zmarnował tylko tyle twojego czasu, a nie zatrudnił, gdzie musiałbyś się z nim użerać każdego dnia, tak że poniekąd zrobił ci przysługę.
@kwas_rybonukleinowy: heja tak offtopowo - dlaczego się przebranżawiasz z montażu video? 2. Jak długo pracujesz nad tym? 3. Kurde te wszystkie polecenia i słownictwo jak z innej bajki - gdzie nauczyć się podstaw, żeby cokolwiek z tego zrozumieć? 4. ten kod do czego jest potrzebny? do obsługi strony www? coś w aplikacjach mobilnych się z tym zrobi? Do gry komputerowej? 5. studia też jakieś programistyczne kończyłaś? 6. Jeśli to dla
@Nofenak: ale raczysko, nienawidzę jak ludzie robią z czegoś rocket science, nawet gdy to jest rocket science. Ciesz się że odpadłeś bo byś tego #!$%@? miał na karku codziennie
@Nofenak: To spotkałeś jakiegoś poj@#$ :D Kod jest OK, widać że wiesz o co chodzi i jeżeli tego nie robiłeś przez tydzień to oceniłbym Cię pozytywnie. Niestety, rynek się trochę przegrzał, więc juniorzy mają teraz trochę gorzej niż nawet rok temu. Widocznie ten rekruter chciał odreagować to że wszyscy mają go w d... No i nie oszukujmy się, on review nie zrobił, tylko ktoś mu musiał to wszystko powiedzieć.
Dlatego najlepsze sa rekrutacje do big tech, klepiesz 3 algosy i gitara, nigdzie nie spotkalem takich kozakow jak w big techu mimo tego ze nikt nie kazal im klepac jakies gowno appki na rozmowie.
@pielgrzym_wladca_egiptu: mam podobne doświadczenia. Jak aplikowałem do jakiegoś super nowoczesnego software house'u, z luźną rodzinną atmosferą, to najpierw dostawałem listę gównozadań do zrobienia, a potem wielki pan rekruter-programista narzekał jaki ten kod jest gówniany (czytaj: zrobiony
@Nofenak: niestety w tej branży wiele jest takich nerdowatych typków z wielkimi problemami z emocjami i samooceną, którym nic w życiu nie wychodzi poza byciem programistą i praca jest dla nich jedynym źródłem podbudowywania ego, z czego wynikają potem chore toksyczne relacje w miejscu pracy, bo #!$%@? nerd musi pokazać, że on jest tutaj lepszy, a inni gorsi, musi się wyżyć i nad kimś zatriumfować. Domyślam się, że już z
@ElTalento: Typowy przerost formy nad treścią w durnych zadaniach rekrutacyjnych. Do czegoś co powinno się napisać prosto w krótkim czasie nawrzucają ci miliard wymagań często bzdurnych, komplikujących których jedynym zadaniem jest sprawić, że zrobisz błędy. Albo podadzą jakieś szczegółowe wymagania, nikogo nie przyjmą, ale za to mają działający kod by opchnąć klientowi (znam kilka takich przypadków, w jednym nawet aplikujący napisali firmie cały front i backend strony, bo każdy dostał
Polacy oczywiście muszą szukać dziury w całym i od razu podważać grę naszej reprezentacji, bo "kogo obchodzi w USA siatkówka", tymczasem Amerykanie mają swoje śmieszne sporty, które tylko i wyłącznie ich obchodzą (jakieś baseballe itp.), i mają wywalone w innych.
As an api consumer, given username and header “Accept: application/json”, I would like to list all his github repositories, which are not forks. Information, which I require in the response, is:
Repository Name
Owner Login
For each branch it’s name and last commit sha
As an api consumer, given not existing github user, I would like to receive 404 response in such a format:
{
“status”: ${responseCode}
“Message”: ${whyHasItHappened}
}
As an api consumer, given header “Accept: application/xml”, I would like to receive 406 response in such a format:
{
“status”: ${responseCode}
“Message”: ${whyHasItHappened}
}
Notes:
Please full-fill the given acceptance criteria, delivering us your best code compliant with industry standards.
Please use [https://developer.github.com/v3](https://developer.github.com/v3) as a backing API
Application should have a proper README.md file
Tutaj zrobione to zadnie przeze mnie: https://github.com/Sampeteq/github-task
Dzisiaj rano dzwoni do mnie rekruter i dosłownie zjechał mnie ostro za takie rzeczy jak:
1.Paginacja, której nie było w wymaganiach a ją dodałem. Myślałem, że to standard w każdym API, tym bardziej, że to API GItHuba zwracało czasami kilkadziesiąt wyników.
2.Mappowanie odpowiedzi z WebClienta na Stringa zamiast na jakąś klasę mimo, że później jest to robione.
3.Użycie ObjectMappera do mapowania jsona z WebClient na obiekt Javowy. Powiedział, że to mnie definitywnie skreśla
4.Utworzenie WebClienta za pomocą create() zamiast utworzenia beana. Powiedział, że widać, że nie znam Springa
4. Użycie MockMVC w testach integracyjnych controllera zamiast WireMocka czy czegoś podobnego, nazwał to zbrodnią
Jak to oceniacie? Czy rekruter miał racje i takie błędy dyskwalifikują kandydata czy może moje rozwiązanie jest w miarę ok i rekruter przesadził? Nie ukrywam, że byłem w sporym szoku. Nie bardzo mogłem wejść z nim w polemikę, bo telefon zerwał mnie z łóżka i byłem zaspany
#programowanie #programista15k #java #pracbaza
1. Jeśli nie było w wymaganiach to nie należało wychodzić przed szereg, bo w praktyce zrobiłeś API które nie jest kompatybilne z wymaganiami, szczególnie, że te paginacje nie maja u ciebie wartości domyślnych i pewnie API sie sypnie jak ich nie podasz :(
2. Jest to trochę ćpanie co tam napisałeś. Masz przez to kupę niepotrzebnego kodu (cały ten GithubMapper nie ma sensu bytu). Z tego twojego klienta/adaptera chciałbyś
bredzisz
2. Jak długo pracujesz nad tym?
3. Kurde te wszystkie polecenia i słownictwo jak z innej bajki - gdzie nauczyć się podstaw, żeby cokolwiek z tego zrozumieć?
4. ten kod do czego jest potrzebny? do obsługi strony www? coś w aplikacjach mobilnych się z tym zrobi? Do gry komputerowej?
5. studia też jakieś programistyczne kończyłaś?
6. Jeśli to dla
Kod jest OK, widać że wiesz o co chodzi i jeżeli tego nie robiłeś przez tydzień to oceniłbym Cię pozytywnie.
Niestety, rynek się trochę przegrzał, więc juniorzy mają teraz trochę gorzej niż nawet rok temu. Widocznie ten rekruter chciał odreagować to że wszyscy mają go w d... No i nie oszukujmy się, on review nie zrobił, tylko ktoś mu musiał to wszystko powiedzieć.
@Nofenak: Rekruter na ciebie nakrzyczał? xD
@seniorwykopek: tja, te czasy już minęły, na szczęście
@pielgrzym_wladca_egiptu: mam podobne doświadczenia. Jak aplikowałem do jakiegoś super nowoczesnego software house'u, z luźną rodzinną atmosferą, to najpierw dostawałem listę gównozadań do zrobienia, a potem wielki pan rekruter-programista narzekał jaki ten kod jest gówniany (czytaj: zrobiony
Nie rób tych zadań
Oni srają na to
import requests
from flask import Flask, request, jsonify, makeresponse