ProgramowaniePolecane tematy
Jakich języków programowania powinieneś się uczyć, aby znaleźć pracę
27 mln programistów na świecie codziennie tworzy kolejne linijki kodu dla nowych aplikacji lub ulepsza już istniejące. Specjaliści z 7N sprawdzili, jakiego rodzaju oprogramowania pisze się dziś najwięcej i które technologie powinny opanować osoby rozwijające karierę w branży IT.
Serwisy internetowe, aplikacje mobilne, aplikacje webowe, chmury obliczeniowe, IoT, (internet rzeczy), boty, gry, uczenie maszynowe, AR i VR… Technologie cyfrowe już dawno stały się zbyt złożone, by jedna, nawet bardzo zdolna osoba potrafiła programować wszystko i w każdym języku. Co w takim razie powinny zrobić osoby chcące rozwijać się w IT? Na jaką technologię postawić? Wskazówek może dostarczyć popularność języków programowania na świecie.
JavaScript, HTML, SQL czy Python…
Badanie Stack Overflow 2020, w którym wzięło udział 65 tys. programistów z całego świata, pokazuje m.in., że najczęściej stosowanym przez nich językiem programowania jest JavaScript. Pracuje na nim aż 68 proc. respondentów. Uchodzi on za najlepszy przy tworzeniu aplikacji webowych, rozwiązań chmurowych oraz aplikacji IoT. Zaraz za nim, z wynikiem 63%, plasuje się HTML/CSS, używane przede wszystkim do tworzenia serwisów internetowych. Kolejny jest SQL (55%) stosowany do tworzenia baz danych i przeprowadzania na nich operacji.
Popularność Big Data winduje też w górę pozycję języka Python (44%), znajdującego również zastosowanie przy uczeniu maszynowym i aplikacjach IoT. Piątkę topowych technologii programowania zamyka Java, język uniwersalnego zastosowania, używany najczęściej do tworzenia aplikacji webowych, mobilnych, rozwiązań chmurowych, aplikacji desktopowych i IoT.
„Poza najbardziej popularnymi językami programowania, respondenci wymienili jeszcze ponad 20 innych. Nic dziwnego. Wiele współczesnych komercyjnie tworzonych systemów IT łączy w sobie kilka technologii. Wart wyróżnienia jest wzrost popularności Pythona, często wspierającego rozwiązania z dziedziny data science i AI. Natomiast już inny z zauważalnych współcześnie trendów – wzrost popularności rozwiązań chmurowych – może dokonywać się przy użyciu różnych języków” – zauważa Paweł Zdziech, Executive Recruitment Manager and Communication Manager w 7N.
Początkujący programiści przed trudnym wyborem
Wskazówkę, na jakiego rodzaju oprogramowanie istnieje obecnie największy popyt, mogą dostarczyć portale rekrutacyjne. Amerykański serwis Indeed.com posiada aktualnie ok. 52 tys. ogłoszeń o pracę dla programistów ze znajomością języka HTML i odpowiednio, 50 tys. dla SQL, 49 tys. dla Pythona, 45 tys dla Javy, 37 tys. dla JavaScript oraz wielokrotnie mniej dla pozostałych technologii jak na przykład PHP czy C++.
W ostatnich latach obserwujemy wzrost zapotrzebowania na tzw. fullstack developerów, a więc tych, którzy potrafią programować zarówno warstwę backendową jak i frontendową, albo na ekspertów od DevOps, łączących kompetencje programistyczne i administratorskie. Rynek więc wydaje się potwierdzać słuszność filozofii wszechstronności. Sprawdza się tu stary koncept “umiejętności T”, gdzie przy byciu ekspertem w jakimś obszarze, ma się też kompetencje, niekoniecznie już eksperckie, w innych obszarach.
Czy dobry programista powinien zatem dążyć do poznania wszystkich czołowych języków, aby w razie potrzeby umieć napisać zarówno aplikację mobilną, bota, jak i stronę internetową? Nie do końca. Paweł Zdziech sugeruje, że długofalowo najbardziej opłaca się specjalizacja – dobre opanowanie jednej technologii, przy jednoczesnym uczeniu się kolejnych, aby mieć szeroki ogląd sytuacji w branży.
„W ostatnich latach obserwujemy wzrost zapotrzebowania na tzw. fullstack developerów, a więc tych, którzy potrafią programować zarówno warstwę backendową jak i frontendową, albo na ekspertów od DevOps, łączących kompetencje programistyczne i administratorskie. Rynek więc wydaje się potwierdzać słuszność filozofii wszechstronności. Sprawdza się tu stary koncept “umiejętności T”, gdzie przy byciu ekspertem w jakimś obszarze, ma się też kompetencje, niekoniecznie już eksperckie, w innych obszarach” – zauważa Paweł Zdziech.
Technologie dla zawodowców
Warto zwrócić uwagę na to, że zarówno raport Stack Overflow jak i przegląd serwisów rekrutacyjnych to “fotografia”, pokazująca chwilowy stan branży, która ze swojej natury jest dynamiczna. W ostatniej dekadzie nie dochodziło może do rewolucji w sposobie tworzenia programowania, ale jednak miały miejsce znaczące przetasowania. Zauważalny jest stopniowy spadek popularności języka PHP względem Pythona i JavaScript, a w przypadku tego ostatniego również związanych z nim bibliotek Angular i React.js.
„Nasi konsultanci najczęściej angażowani są w rozwój dużych systemów w branżach takich jak finansowa, ubezpieczeniowa, energetyczna, medyczna i farmaceutyczna, czy szeroko pojętych usług IT dostarczanych dużym klientom. Najpopularniejsze dziś technologie i języki programowania (JavaScript, Java, C#) wchodzą więc w zakres ich umiejętności” – zauważa Paweł Zdziech.
Ekspert 7N radzi również, by prognozując przyszłe trendy dotyczące programowania, obserwować, w co inwestują duzi technologiczni gracze, np. Google czy Microsoft. Z tej perspektywy czarnymi koniami przyszłych rankingów może być język Go, używany do tworzenia złożonego oprogramowania sieciowego oraz Dart, znajdujący zastosowanie przy aplikacjach tworzonych na kilka platform jednocześnie.
Bardzo fachowy artykuł. Ciekawe jest to, że w szkołach średnich w klasach informatycznych uczniowie zapoznają się praktycznie tylko C++ , który w tym rankingu znajduję się dopiero na 10 pozycji.
Javascript Java i python. Mają największa popularność na rynku. Ale najlepsze nie są.
A jaki język jest Twoim zdaniem najlepszy?
Nazywanie jakiekolwiek języka programowania najlepszym, powinno być tylko subiektywną opinią.
Dla jednego najlepszym językiem będzie JavaScript a dla innego Assembler.
Wpis nigdzie nie mówi, że któryś z wymienionych języków jest najlepszy tylko najpopularniejszy.
Stawianie HTML/CSS obok języków programowania i nazywanie ich takowymi to chyba jakieś nieporozumienie… Następnym razem warto byłoby dodać, że HTML i CSS nie są językami programowania.