Умение #4 - езици за програмиране и софтуерни технологии (25%)

Езиците за програмиране и технологиите за софтуерна разработка формират около 25% от минималните умения на програмиста. Те са най-обемни за научаване, но най-бързо се променят с времето. Ако погледнем обявите за работа от софтуерната индустрия, там често се споменават всякакви думички (като изброените по-долу), но всъщност в обявите мълчаливо се подразбират първите три умения: да кодиш, да мислиш алгоритмично и да владееш фундамента на компютърните науки и софтуерното инженерство.

За тези чисто технологични умения вече езикът за програмиране има значение.

  • Обърнете внимание: само за тези 25% от професията има значение езикът за програмиране!
  • За останалите 75% от уменията няма значение езикът и тези умения са устойчиви във времето и преносими между различните езици и технологии.

Ето и някои често използвани езици и технологии (software development stacks), които се търсят от софтуерните фирми (актуални към май 2017 г.):

  • C# + ООП + ФП + класовете от .NET + база данни SQL Server + Entity Framework (EF) + ASP.NET MVC + HTTP + HTML + CSS + JS + DOM + jQuеry
  • Java + Java API classes + ООП + ФП + бази данни + MySQL + HTTP + уеб програмиране + HTML + CSS + JS + DOM + jQuery + JSP/Servlets + Spring MVC или Java EE / JSF
  • PHP + ООП + бази данни + MySQL + HTTP + уеб програмиране + HTML + CSS + JS + DOM + jQuery + Laravel / Symfony / друг MVC framework за PHP
  • JavaScript (JS) + ООП + ФП + бази данни + MongoDB или MySQL + HTTP + уеб програмиране + HTML + CSS + JS + DOM + jQuery + Node.js + Express + Angular или React
  • Python + ООП + ФП + бази данни + MongoDB или MySQL + HTTP + уеб програмиране + HTML + CSS + JS + DOM + jQuery + Django
  • C++ + ООП + STL + Boost + native development + бази данни + HTTP + други езици
  • Swift + MacOS + iOS + Cocoa + Cocoa Touch + XCode + HTTP + REST + други езици

Ако изброените по-горе думички ви изглеждат страшни и абсолютно непонятни, значи сте съвсем в началото на кариерата си и имате да учите още години докато достигнете професията "софтуерен инженер". Не се притеснявайте, всеки програмист преминава през един или няколко технологични стека и се налага да изучи съвкупност от взаимосвързани технологии, но в основата на всичко това стои умението да пишеш програмна логика (да кодиш), което се развива в тази книга, и умението да мислиш алгоритмично (да решаваш задачи по програмиране). Без тях не може!

results matching ""

    No results matching ""