Jak określić poziom własnej znajomości technologii?

Odpowiedz Nowy wątek
2019-11-05 13:06
0

Ostatnio zastanawiam się nad tym, jak określić poziom własnej znajomości technologii. Przez "poziom" rozumiem tutaj stwierdzenia: "podstawowy", "średniozaawansowany", "zaawansowany", "biegły". Przez "technologię" rozumiem języki programowania lub koncepcje typu "blockchain", choć mógłbym pod to też podciągnąć oprogramowanie. Czasem chce się podać taki poziom w CV lub w jakimś profilu internetowym.

W przypadku określenia "biegle" sprawa jest dla mnie raczej oczywista – jak ktoś czuje, że zna biegle, to zna biegle, jeśli nie czuje, to nie (nie mam tu na myśli upiększania się we własnych oczach, tylko możliwie realistyczną ocenę pewności siebie). Natomiast mam problem z określeniem momentów, w którym ktoś przechodzi z poziomu nieznajomości danej technologii do "podstawowego", z "podstawowego" do "średniozaawansowanego" oraz ze "średniozaawansowanego" do zaawansowanego". Szczególną trudność mam w tym, kiedy rozpoczyna się znajomość "podstawowa".

Zdaję sobie sprawę, że te określenia są płynne. Niemniej liczę na to, że jakoś da się to ustalić.

Pytanie pomocnicze, jakie mi się nasuwa: czy według Was poziom "podstawowy" powinien uwzględniać praktykę? Jeśli odpowiecie, że to zależy od technologii, to taka odpowiedź mi wystarczy. Obecnie nie wiem, czy zależy, czy nie.

Jeśli odpowiecie, że to zależy od osoby, która będzie to CV / ten profil czytała, to taka odpowiedź mnie nie zadowala. ;) Chodzi mi o to, żeby samemu być pewnym tej oceny.

Nie chodzi mi wyłącznie o określanie tego poziomu samemu: może być z pomocą innej osoby, może być z pomocą programu czy testu. Problem w tym, że nie zawsze wiadomo, gdzie taką osobę, program czy test znaleźć...


edytowany 3x, ostatnio: Silv, 2019-11-05 13:09

Pozostało 580 znaków

2019-11-05 13:32
11

Jest na to prosty algorytm iteracyjny:

  1. Ustawiasz poziom = biegły
  2. Wpisujes poziom do CV
  3. Wysyłasz CV
  4. Dostajesz zapro na rozmowe
  5. Idziesz na rozmowe
  6. If not wyśmiali Cie goto 9
  7. Ustawiasz poziom = poziom - 1 // biegły -> srednio zaaw -> junior -> bootcamp -> hmm
  8. Pętelka, goto 2
  9. Profit, napinasz klate i wychodzisz jak prezez glownym wejsciem, znasz juz swoj poziom

Pokaż pozostałe 2 komentarze
Za dużo goto - vpiotr 2019-11-06 22:14
@vpiotr: właśnie, lepiej by było zrobić to na jakimś while - cerrato 2019-11-07 11:14
W pseudokodzie ktory ja znam nie ma łajli, pisze sie "goto/skocz do" lub "wykonuj dopoki". - vpiotr 2019-11-07 11:23
no to skorzystać można z dopuki ;) - cerrato 2019-11-07 11:32
Gramatyka alternatywna nigdy nie byla moja mocna strona - vpiotr 2019-11-07 11:34

Pozostało 580 znaków

2019-11-05 13:32
2

Generalnie nie jest to łatwy temat, bo wiele osób może interpretować te poziomy inaczej. Zasadniczo pojmuję to tak - czy jestem w stanie wskoczyć w projekt w technologii X czy nie. A jeśli tak -to jak szybko będę rozumiał różne rzeczy, które się tam dzieją. I uwzględniam, że niekoniecznie będą one zgodne z przyjętymi standardami. Dla przykładu:

  • "miałem C# na studiach" i ani jednego projektu w nim nigdzie - nie ma się co oszukiwać - znam jego podstawy
  • "pracowałem w Elixirze i mam kilka projektów open source etc" - znam go, a raczej znałem dość dobrze, bo teraz w nim nie piszę. Znam nieco więcej niż podstawy, ale trochę czasu bym potrzebował by odświeżyć sobie wiedzę i znowu pracować przy jakimś projekcie w tym języku
  • "pracuję w PHP7 i Symfony 3/4, korzystam z Composera, PHPStorma etc." - zatem znam go na tyle dobrze, że przesiadka na inny projekt Symfony będzie potrzebować stosunkowo niewiele czasu, nieco więcej skok na Laravel, CakePHP etc.

Technologie, które mam w CV (a raczej na LinkedIn) to te, w których mógłbym pracować czyt. gdybym chciał odejść z obecnej pracy, to jestem w stanie przypomnieć sobie / zapoznać się z nowym frameworkiem etc. w niewiekim czasie np. w ramach okresu wypowiedzenia. Patrząc na to, co wymieniłem, nie będę udawał, że znam C# (składnia, a cały ekosystem, frameworki, narzędzia i praktyka to spooora różnica) ;)

Pozostało 580 znaków

2019-11-05 13:34
1

Podajesz stwierdzenia, które są mocno subiektywne. Nie da się tego tak jednoznacznie określić.

Pozostało 580 znaków

2019-11-05 17:50
1

Stosujesz sprawdzony od wieków algorytm dochodzenia do porozumienia;)

    binarySearch(JobOffer[] offers) {

       left = 0 // pracodawca
        right = offers.length // ty
        while left<right){
            mid = (left + right) / 2 // wspólna pierwsza iteracja na interview
            if (offers[mid] == yourGoal return mid // welcome on board
            if (yourGoal < offers[yourGoal])
                right = mid
            else left = mid + 1
        }
        return -1 // happy enda diabli wzięli
    }

Nie ustalaj nie wiadomo ile i nie wiadomo po co warunków, kryteriów, porównań, wartościować i diabli wiedzą czego. Sprawdzaj w praktyce bo tylko takie sprawdzenie ma sens. PS Uwzględnij tak zwany easy-warsaw-factor ;)


"Ktoś sobie uświadomił, że pisał pod pseudonimem rzeczy, które lepiej żeby w firmie nie wypatrzyli :-)"

"- Ledwo na studiach 3 tydzień się kończy i już ciężko?
- Niestety prowadzący jest dziwny i robi kartkówki"
edytowany 4x, ostatnio: BraVolt, 2019-11-05 18:03

Pozostało 580 znaków

2019-11-05 21:49
0

@cepa: u mnie algorytm szedłby tak: 6. If wyśmiali Cię, bo oszukiwałeś then nie składaj więcej nigdzie podania. ;)

@Pipes: to brzmi rozsądnie; trochę muszę to uporządkować według siebie, ale to brzmi jak część rozwiązania mojego problemu.

@BraVolt:

happy enda diabli wzięli

He, he. ;)

Sprawdzaj w praktyce bo tylko takie sprawdzenie ma sens.

Widać w tym sens... ale to dużo czasu zabiera. Ale może tylko tak będzie dobrze.

PS Uwzględnij tak zwany easy-warsaw-factor ;)

Co to?


edytowany 2x, ostatnio: Silv, 2019-11-05 21:50
Pokaż pozostałe 4 komentarze
@BraVolt: hm, jeśli o mnie chodzi, mam kontakt z Warszawą na co dzień, więc może to być ta kwestia. - Silv 2019-11-06 21:47
PS. Ale rzeczywiście, jeśli spojrzeć w ten sposób, to tu powinno być najwięcej ofert. Tylko ja sobie wyobrażam, że łatwość otrzymania pracy jest zależna także między innymi od tego, jakie są wymagania. Że wymagania w Warszawie częściej będą wyższe niż w mniejszych miastach, głównie z uwagi na podaż kandydatów. - Silv 2019-11-06 21:50
Podaż największa w PL, ale jakość... - BraVolt 2019-11-06 21:51
A, jaka jakość to już nie wiem. - Silv 2019-11-06 21:53
Baaaaaaardzo różna. - BraVolt 2019-11-06 21:54

Pozostało 580 znaków

2019-11-05 22:48
2

. Przez "poziom" rozumiem tutaj stwierdzenia: "podstawowy", "średniozaawansowany", "zaawansowany", "biegły".

Ja się tak zastanawiam z JSem. Na pewno jestem zaawansowanym użytkownikiem tego języka, ale czy biegłym? Ekspertem nie jestem, bo jest masę rzeczy, których nie wiem, ale z drugiej strony czuję, że poruszam się w JS bez problemu i szybko mknę po kodzie.

Tylko czy to biegłość? Czy może po prostu pewna "płynność". Tak jak kurczę można znać płynnie angielski, ale to nie znaczy, że się zna go na poziomie eksperckim.

Czasem chce się podać taki poziom w CV
(...)
W przypadku określenia "biegle" sprawa jest dla mnie raczej oczywista – jak ktoś czuje, że zna biegle, to zna biegle, jeśli nie czuje, to nie (nie mam tu na myśli upiększania się we własnych oczach, tylko możliwie realistyczną ocenę pewności siebie)

W CV / na potrzeby pracodawców trzeba zwrócić uwagę na to, że jest to pewna gra. Jak w ofertach jest napisane "biegła znajomość X" to zwykle wcale nie jest potrzebna biegła znajomość, tylko zwykle wystarczy średniozawaansowana, żeby aplikować i przejść testy techniczne. Tylko, że oczywiście przed HRką trzeba mówić, że się jest jak najlepszym, mistrzem, biegłym, i co tam chcą usłyszeć, bo jak pokażesz niepewność siebie, to możesz nie zostać zaproszony na rozmowę techniczną.

"podstawowy", "średniozaawansowany", "zaawansowany", "biegły". Przez "technologię" rozumiem języki programowania lub koncepcje typu "blockchain", choć mógłbym pod to też podciągnąć oprogramowanie. Czasem chce się podać taki poziom w CV lub w jakimś profilu internetowym.

Co do blockchaina to robiłem kiedyś jakieś tutoriale i gdybym aplikował do firmy, która się tym zajmuje, to bym wpisał, że znam podstawy blockchaina. Ale czy znam? Koncepcyjnie może i kumam, ale bawiłem się i tak na sucho i gdybym miał wejść w jakiś projekt blockchainowy, to przez kilka tygodni musiałbym się douczać tych technologii blockchainowych i tego, jak to się faktycznie robi. Więc czuję, że nawet podstaw nie znam (ale - na potrzeby rekrutacji i tak byłbym lepszym kandydatem niż ktoś, kto nic w tym nie robił, więc mógłbym spokojnie powiedzieć, że podstawy znam. Bo to nie chodzi o absolutną znajomość, tylko relatywną, jak wypadasz na tle innych kandydatów czy ogółu społeczeństwa).

Szczególną trudność mam w tym, kiedy rozpoczyna się znajomość "podstawowa".

Zależy. To może być znajomość typu "słyszałem nazwę i przeczytałem jeden artykuł o tym", poprzez "przerobiłem tutoriale", czy "używałem tego w istniejącym projekcie" albo "zrobiłem kilka prostych projektów w tym" aż po "używam tego od kilku lat, ale czuję, że jest to wiedza powierzchowna, i muszę googlować jak chcę osiągnąć coś zaawansowanego". To wszystko można podciągnąć pod "znajomość podstawowa".

Pytanie tylko, czy jest znajomość wystarczająca do skutecznej pracy z tymi technologiami. Np. z pewnymi pobocznymi technologiami, jak Git, można jechać na dość słabej znajomości i googlować recepty na StackOverflow. Ale już jechanie na słabej znajomości języka programowania(czy innego podstawowego narzędzia) byłoby dość słabe, bo wtedy co chwila wyskakiwałyby jakieś problemy i człowiek straciłby masę czasu na googlowanie albo na zastanawianie się "czemu tu jest błąd?" albo "jak to zrobić w tym języku?".


((0b10*0b11*(0b10**0b101-0b10)**0b10+0b110)**0b10+(100-1)**0b10+0x10-1).toString(0b10**0b101+0b100);
Na pewno jestem zaawansowanym użytkownikiem tego języka, ale czy biegłym? imo biegły jest < zaawansowany - WeiXiao 2019-11-08 19:37

Pozostało 580 znaków

2019-11-05 23:04
0
LukeJL napisał(a):

Ja się tak zastanawiam z JSem. Na pewno jestem zaawansowanym użytkownikiem tego języka, ale czy biegłym? Ekspertem nie jestem, bo jest masę rzeczy, których nie wiem, ale z drugiej strony czuję, że poruszam się w JS bez problemu i szybko mknę po kodzie.

To coś jak ja; niekoniecznie w sensie JS, ogólnie.

W CV / na potrzeby pracodawców trzeba zwrócić uwagę na to, że jest to pewna gra. Jak w ofertach jest napisane "biegła znajomość X" to zwykle wcale nie jest potrzebna biegła znajomość, tylko zwykle wystarczy średniozawaansowana, żeby aplikować i przejść testy techniczne. Tylko, że oczywiście przed HRką trzeba mówić, że się jest jak najlepszym, mistrzem, biegłym, i co tam chcą usłyszeć, bo jak pokażesz niepewność siebie, to możesz nie zostać zaproszony na rozmowę techniczną.

Jak pokażę "zbytnią pewność", to też nie wróżę sobie zaproszenia. Przynajmniej sam bym nie chciał rozmawiać z osobą "zbyt pewną siebie".

Co do blockchaina to robiłem kiedyś jakieś tutoriale i gdybym aplikował do firmy, która się tym zajmuje, to bym wpisał, że znam podstawy blockchaina. Ale czy znam? Koncepcyjnie może i kumam, ale bawiłem się i tak na sucho i gdybym miał wejść w jakiś projekt blockchainowy, to przez kilka tygodni musiałbym się douczać tych technologii blockchainowych i tego, jak to się faktycznie robi. Więc czuję, że nawet podstaw nie znam (ale - na potrzeby rekrutacji i tak byłbym lepszym kandydatem niż ktoś, kto nic w tym nie robił, więc mógłbym spokojnie powiedzieć, że podstawy znam. Bo to nie chodzi o absolutną znajomość, tylko relatywną, jak wypadasz na tle innych kandydatów czy ogółu społeczeństwa).

To ciekawe. Nie myślałem o określaniu znajomości jako relatywnej do innych. Najbardziej to chyba dotyczyłoby poziomów "podstawowego" oraz "biegłego". To mogłaby być część rozwiązania.

Zależy. To może być znajomość typu "słyszałem nazwę i przeczytałem jeden artykuł o tym", poprzez "przerobiłem tutoriale", czy "używałem tego w istniejącym projekcie" albo "zrobiłem kilka prostych projektów w tym" aż po "używam tego od kilku lat, ale czuję, że jest to wiedza powierzchowna, i muszę googlować jak chcę osiągnąć coś zaawansowanego". To wszystko można podciągnąć pod "znajomość podstawowa".

Przyda się Twój punkt widzenia do średniej, jaką będę wyciągać z tego wątku. :)

Pytanie tylko, czy jest znajomość wystarczająca do skutecznej pracy z tymi technologiami. Np. z pewnymi pobocznymi technologiami, jak Git, można jechać na dość słabej znajomości i googlować recepty na StackOverflow. Ale już jechanie na słabej znajomości języka programowania(czy innego podstawowego narzędzia) byłoby dość słabe, bo wtedy co chwila wyskakiwałyby jakieś problemy i człowiek straciłby masę czasu na googlowanie albo na zastanawianie się "czemu tu jest błąd?" albo "jak to zrobić w tym języku?".

Zależy od narzędzia. Ciekawe, nie myślałem o tym. To mogłaby być część rozwiązania.


Pozostało 580 znaków

2019-11-06 22:25
1

Dla mnie są tylko takie poziomy znajomości:

  • zerowa, max do "coś tam słyszałem przy kawie"
  • podstawowa: umiem napisać skrypt robiący jedną rzecz w danym języku przy pomocy istniejącej bazy kodu, SO, zeal i oficjalnej dokumentacji
  • zaawansowana: robię to co powyżej sprawnie
  • biegła: odpowiadam bez zastanawiania na pytania na poziomie zaawansowanym

Osobiście uważam że z każdego tematu można zagiąć każdą osobę, chyba że mamy do czynienia z dr S. Cooperem.
Fakt na którym tę opinię opieram: https://news.ycombinator.com/item?id=4677541


Szacuje się, że w Polsce brakuje 50 tys. programistów
edytowany 1x, ostatnio: vpiotr, 2019-11-07 11:10
dr. S. Cooperem! - Ktos 2019-11-07 10:43

Pozostało 580 znaków

2019-11-06 22:33
0
vpiotr napisał(a):

Osobiście uważam że z każdego tematu można zagiąć każdą osobę

Idziesz do pracy czy na teleturniej z kołami ratunkowymi i telefonami do przyjaciela?
Chcą zaginać każdego kandydata to znaczy, że nikomu nie chcą płacić nawet dolnych widełek. Naprawdę chcesz tam pracować i czujesz dyskomfort bo dałeś się zagiąć?


"Ktoś sobie uświadomił, że pisał pod pseudonimem rzeczy, które lepiej żeby w firmie nie wypatrzyli :-)"

"- Ledwo na studiach 3 tydzień się kończy i już ciężko?
- Niestety prowadzący jest dziwny i robi kartkówki"

Pozostało 580 znaków

2019-11-08 18:30
0

Ciężko skategoryzować swój poziom, bo im więcej się wie, tym większą ma się świadomość, że jest jeszcze masa rzeczy do odkrycia i opanowania. Jeżeli chodzi o podejście zawodowe, to w CV nie wpisywałem poziomu znajomości technologii. Uznałem, że skoro aplikuję na pozycję juniorską, to wpisując "Java" nie mam na myśli tego, że jestem ekspertem w tej dziedzinie, lecz że jestem biegły w niej na poziomie juniora :)

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0