Piotr Jarolewski

Piotr Jarolewski Software Engineer at
Grupa Allegro

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Witam,

Mam mały problem, poszukujemy osoby na stanowisko programisty PHP, napisałem według mnie banalnie proste zadania aby sprawdzić czy ktoś ma jakieś pojęcie o PHP. Według mnie czas na wykonanie tych zadań to max 45 minut.
Było kilku kandydatów, z czego jeden zrobił w połowie zadanie nr 1. Reszta praktycznie nic :(

Czy ja dałem za trudne pytania?

Poniżej załączam moje pytania:

. Utwórz w bazie danych "baza" tabele o nazwie "testowa" z polami:
imie - varchar 55
nazwisko - varchar 155
wiek - int
Następnie: napisz formularz z polami:
- Imię,
- nazwisko
- wiek
Przefiltruj dane, czy pola zostały uzupełnione, oraz czy pole wiek zawiera liczbę naturalną.
Zapisz te dane do tabeli w bazie danych "baza" o nazwie "testowa"
Dodaj przykładowe wpisy:
Piotr Kowalski 50 lat
Ania Nowak 25 lat
Tomasz Jaguar 34 lata
Agata Młyn 22 lata
Kasia Sobek 45 lat
Natalia Parus 18 lat
Kuba Wojewódzki 45 lat
Zdzisiu Pierdzipieta 55 lat

2. Wyświetl zapisane wcześniej dane w 2 tabelach:
- posortowane imię alfabetycznie
posortowane od najmłodszego do najstarszego

3. Utwórz klasę „Osoba”, w niej pole „dane” typu Array z kluczami: imię, nazwisko, wiek, następnie utwórz metodę dodajOsobe() która uzupełni tablice danymi. ($dane = Array('imie'=>'Piotr', 'nazwisko'=>'Moje nazwisko', 'wiek'=>'21')). Następnie napisz metodę pokazOsobe() która wyświetli te dane, może być print_r();

4. Na podstawie tabeli "pages" wyświetl drzewo struktury menu strony. Za pomocą jednego zapytania SQL, stosując rekurencję. Pole "parent_id" zawiera ID rodzica.
Wynik działania:
Strona główna
Nowości
-->Nowe
-->Archiwum
Oferta
-->Portfele
-->Teczki
-->Etui na wizytówki
-->Torby
-->Aktówki
Kontakt
-->Formularz kontaktowy
-->Dane kontaktowe

Starałem się pisać jak najprostszym językiem.
Wiem że zadanie 4 nie jest łatwe, nie liczyłem czy ktoś to napisze, chciałem sprawdzić czy ktoś się podejmie, a nikt nawet nie dotarł do tego zadania.
Michał Sznurawa

Michał Sznurawa Scala Developer

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Po pierwsze - daj więcej czasu. Po drugie - pokaż ogłoszenie:P Bo to pewnie jest problem;) Tzn. największa trudność w rekrutacji to skusić na nią programistów z w miarę przyzwoitym doświadczeniem.
Marcin Staniszczak

Marcin Staniszczak Programista Python

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Moim zdaniem zadania są raczej proste, łącznie z ostatnim (zakładam, że przez rekurencje rozumiesz funkcję w PHP/Pythonie, która odpytuje tym samym zapytaniem bazę).
Może stres? A myślałeś o tym, żeby kandydatom dać do testu normalne stanowisko pracy, zamiast kartki? Czasami lepiej i szybciej jest coś prostego "zakodować" niż napisać na kartce.
Piotr Jarolewski

Piotr Jarolewski Software Engineer at
Grupa Allegro

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Michał Sznurawa:
Po pierwsze - daj więcej czasu. Po drugie - pokaż ogłoszenie:P Bo to pewnie jest problem;) Tzn. największa trudność w rekrutacji to skusić na nią programistów z w miarę przyzwoitym doświadczeniem.


Ale nie daje limitu czasu. Do bólu.
Jedna osoba pisała pół zadania pierwszego przez 2.5 godziny!.

W ogłoszeniu było napisane że potrzebujemy Programisty PHP. żadnych frameworków nie dodawaliśmy bo w tej firmie tego nie potrzebują. Czysty PHP no i podstawowa znajomość HTML'a
Piotr Jarolewski

Piotr Jarolewski Software Engineer at
Grupa Allegro

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Marcin Staniszczak:
Moim zdaniem zadania są raczej proste, łącznie z ostatnim (zakładam, że przez rekurencje rozumiesz funkcję w PHP/Pythonie, która odpytuje tym samym zapytaniem bazę).
Może stres? A myślałeś o tym, żeby kandydatom dać do testu normalne stanowisko pracy, zamiast kartki? Czasami lepiej i szybciej jest coś prostego "zakodować" niż napisać na kartce.

Maja komputer tylko dla Siebie, nikt nie patrzy na monitor i pełny dostęp do sieci/książek. Baza danych utworzona, dane do niej podane. Piotr Jarolewski edytował(a) ten post dnia 04.08.11 o godzinie 13:36
Marcin Staniszczak

Marcin Staniszczak Programista Python

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

W ogłoszeniu dałeś widełki płacowe? Może dałeś za niskie;-)? Albo nie dałeś i co lepsi stwierdzili, że to nie dla nich;-)
Piotr Jarolewski

Piotr Jarolewski Software Engineer at
Grupa Allegro

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Marcin Staniszczak:
W ogłoszeniu dałeś widełki płacowe? Może dałeś za niskie;-)? Albo nie dałeś i co lepsi stwierdzili, że to nie dla nich;-)

No właśnie nie dałem.

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Moim zdaniem zadania są napisane w trochę niejasny sposób i mogą w kilku miejscach wzbudzić wątpliwości.

np
"Przefiltruj dane, czy pola zostały uzupełnione, oraz czy pole wiek zawiera liczbę naturalną."

Jak to rozumieć? Gdzie i co mam przefiltrować? Poprzez formularz? Poprzez zapytanie do bazy danych etc. Trzeba pamiętać żeby podać jednoznaczne polecenia. Wyjątkiem może być sytuacja gdy chcemy sprawdzić czy kandydat nie boi się zapytać, ale wydaje mi się, że tym razem tak nie było :)

Przypuszczam, że mogłeś trafić na osoby z małym doświadczeniem i do tego z dużymi problemami komunikacyjnymi ;)
Michał Sznurawa

Michał Sznurawa Scala Developer

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Piotr Jarolewski:
Marcin Staniszczak:
W ogłoszeniu dałeś widełki płacowe? Może dałeś za niskie;-)? Albo nie dałeś i co lepsi stwierdzili, że to nie dla nich;-)

No właśnie nie dałem.

Jak zaczęliśmy dawać widełki w ogłoszeniach, to pojawiło się więcej zgłoszeń. Wzrosła też ilość zgłoszeń przyzwoitych programistów. Aha - i w cale ludzie nie wszyscy chcieli od razu kasy z górnej granicy.
Wioletta Makuch

Wioletta Makuch Ekspert ds.
Raportowania i
Rozliczeń Sprzedaży,
Orange Po...

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Przenieście biuro do Krakowa, to się zgłoszę :P
Ba, nawet zmieszczę się w czasie 45 minut i to na kartce ^^

Nie takie rzeczy się robiło. PHP to jeszcze prosta sprawa. Spróbuj sobie skompilować program w C++. Ach, te egzaminy z Wprowadzenia do programowania.

Moja rada? Na forach udziela się pełno osób, które oferują różne rady i porady. Wielu freelancerów ogłasza się również czy to na zlecenia.przez.net czy też oferia.pl Wyłap kilka obiecujących okazów i zaproponuj im konkretny. Skoro oni nie chcą się zgłosić do Ciebie, Ty zgłoś się do nich. :)
Marcin Staniszczak

Marcin Staniszczak Programista Python

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Wioletta Makuch:
Przenieście biuro do Krakowa, to się zgłoszę :P
Ba, nawet zmieszczę się w czasie 45 minut i to na kartce ^^

Pewnie, tylko na kartce nie masz pewności, że wszystkie ; są tam gdzie być powinny, szczególnie gdy ktoś często skacze np. między PHP i Pythonem;-)

konto usunięte

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Widełki płacowe i znajdą się sensowni ludzie.

konto usunięte

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

1 - banał
2 - banał
3 - banał
a przy 4 bym się uśmiechnął i się spytał czy jesteś poważny:) dlaczego? jest beznadziejne, bo są schematy na te zapytanie. A ja bym Ci powiedział dodatkowo że taka struktura jest beznadziejna, bo używanie rekurencji w sql to jak strzał z shotguna w kolano i wbicie sobie jeszcze siekiery w udo.

Lepiej niech zrobi jakiś polimorfizm: http://www.cojack.pl/polimorfizm-w-php
Ja miałem takie pytanie w pracy, jeżeli tak jak ja zrobi źle, to albo go stres zżarł (tak jak mnie) albo nie wie co to jest polimorfizm.

Postaraj się by rozmowa była prowadzona na luzie, najlepiej przejdź do rozmowy na Ty, to obniża ciśnienie.

Powodzenia w poszukiwaniu programisty.

Ludzi znających php jest wiele, ale programistów php nie.Przemek Czekaj edytował(a) ten post dnia 04.08.11 o godzinie 13:57
Piotr Jarolewski

Piotr Jarolewski Software Engineer at
Grupa Allegro

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

No praca jest w Słupcy, mała mieścina koło Konina.
Tylko praca na miejscu w biurze.

Wiem że miejsce jest słabe, w sensie sami dobrzy uderzają do dużych miast.

Każde zadanie tłumaczyłem jak bym chciał aby to wyglądało. Zero pytań, nikt o nic mi się nie spytał, ale to pewnie przez to że dość jasno starałem się to wytłumaczyć.
Piotr Jarolewski

Piotr Jarolewski Software Engineer at
Grupa Allegro

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Przemek Czekaj:
1 - banał
2 - banał
3 - banał
a przy 4 bym się uśmiechnął i się spytał czy jesteś poważny:) dlaczego? jest beznadziejne, bo są schematy na te zapytanie. A ja bym Ci powiedział dodatkowo że taka struktura jest beznadziejna, bo używanie rekurencji w sql to jak strzał z shotguna w kolano i wbicie sobie jeszcze siekiery w udo.

Lepiej niech zrobi jakiś polimorfizm: http://www.cojack.pl/polimorfizm-w-php
Ja miałem takie pytanie w pracy, jeżeli tak jak ja zrobi źle, to albo go stres zżarł (tak jak mnie) albo nie wie co to jest polimorfizm.

Postaraj się by rozmowa była prowadzona na luzie, najlepiej przejdź do rozmowy na Ty, to obniża ciśnienie.

Powodzenia w poszukiwaniu programisty.

Ludzi znających php jest wiele, ale programistów php nie.


Nie, nie żadna rekurencja w SQL, chodzi mi o prostą funkcje w PHP która dostanie tablice wyników z bazy, przeleci po tablicy znajdzie rodzica i od razu go wyświetli w echo. Tablica ma raptem 8 czy 9 wpisów, banał żeby sprawdzić czy ktoś rozumie co to jest "rekurencja"
Tłumaczyłem krok po kroku jak to ma działać. Piotr Jarolewski edytował(a) ten post dnia 04.08.11 o godzinie 14:02
Marcin Staniszczak

Marcin Staniszczak Programista Python

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Piotr Jarolewski:
No praca jest w Słupcy, mała mieścina koło Konina.
Tylko praca na miejscu w biurze.

Wiem że miejsce jest słabe, w sensie sami dobrzy uderzają do dużych miast.

Jedni uderzają do dużych miast, inni pracują zdalnie;-)
Ja teraz pracuje w biurze, ale jakiś czas temu przez ok. dwa lata pracowałem zdalnie i nie narzekałem (ani ja ani szef). Moim zdaniem się da, możliwe jednak, że nie każdy się do tego nadaje.Marcin Staniszczak edytował(a) ten post dnia 04.08.11 o godzinie 14:11

konto usunięte

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

ja kiedys dostalem pytanie:

zrob loopa od 0 do 100 i wyswietl cyferki, ale:
- co kazdy 3 wynik wyswietl "cool"
- co kazdy 5 wynika wyswietl "good"
- a co kazdy wspolny wynik dla good i cool wyswietl "awesome" :)

takie pytania sa dobre na sprawdzenie logicznego myslenia.
Piotr Jarolewski

Piotr Jarolewski Software Engineer at
Grupa Allegro

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Andrzej Winnicki:
ja kiedys dostalem pytanie:

zrob loopa od 0 do 100 i wyswietl cyferki, ale:
- co kazdy 3 wynik wyswietl "cool"
- co kazdy 5 wynika wyswietl "good"
- a co kazdy wspolny wynik dla good i cool wyswietl "awesome" :)

takie pytania sa dobre na sprawdzenie logicznego myslenia.

Fizz buzz :)
Chciałem dać ale ... jakoś szef mnie od tego odgonił.
I wygląda na to że dobrze, bo mamy kilka baz MYSQL i dane z baza trzeba wyświetlić w przeglądarce. Więc pod tym kątem chciałem sprawdzić ludzi.
Mirosław Ratman

Mirosław Ratman Manager IT,
Architekt systemów
@Avast, Founder
@aSyncro ...

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Piotr Jarolewski:
Mam mały problem, poszukujemy osoby na stanowisko programisty PHP, napisałem według mnie banalnie proste zadania aby

... a czy te zadania to nie bardziej dla SQLowca który zna PHP ;)

Osobisci średnio przepadam za pytaniami w stylu:
- do czego słuzy funkcja taka czy inna
- napisz zapytanie SQl ktore zrobi to czy tamto

Wszelkiej maści języki programowania mają tyle funkcjonalności że cieżko to spamietac. Mozna co prawda wykuć na pamieć ale jest to bez sensu.

Stanowczo ciekawsze są pytania na "logiczne myślenie"Mirosław Ratman edytował(a) ten post dnia 04.08.11 o godzinie 14:33
Piotr Jarolewski

Piotr Jarolewski Software Engineer at
Grupa Allegro

Temat: Zadania podczas rekrutacji na stanowisko programista PHP

Mirosław Ratman:
Piotr Jarolewski:
Mam mały problem, poszukujemy osoby na stanowisko programisty PHP, napisałem według mnie banalnie proste zadania aby

... a czy te zadania to nie bardziej dla SQLowca który zna PHP ;)

Osobisci średnio przepadam za pytaniami w stylu:
- do czego słuzy funkcja taka czy inna
- napisz zapytanie SQl ktore zrobi to czy tamto

Wszelkiej maści języki programowania mają tyle funkcjonalności że cieżko to spamietac. Mozna co prawda wykuć na pamieć ale jest to bez sensu.

Stanowczo ciekawsze są pytania na "logiczne myślenie"

Ale my od nikogo nie wymagamy znajomości funkcji na pamięć.
Chodzi o kreatywność Wujek google i sprawa załatwiona, czy ktoś mi postawi gotowca, czy napisze sam a działa tak jak chce to jest OK.
Ważne aby umiał szukać w google i rozwiązywać problemy.

Następna dyskusja:

Starszy programista PHP Taj...




Wyślij zaproszenie do