Global programming technologies review 2017

Share me please

Programming technologies in 2017

From time to time young programmers ask me what they should learn, what are the top programming technologies. When you observe CV of this young programming adepts you will see that they change companies very often. The question is why? Probably they look the best possible option for them, may be programming language or technology ?

In this global programming technologies review I will try to answer a little bit what are the top skills, technologies that every programmer should know as a kind of standards. As we will see there is a conrete set of languages, terminologies and technologies that we can name as a kind of core that must be known by everyone.

I prepare the list of terms in the form of cloud words because we can see in an atractive way how strong are any words in the context of the rest ones.

Mostly used programming technologies from IT job position names

First cloud words was prepared according to top, best paid programmer offers from website. I created simple C# application that allowed automatically to read top 1000 job offers. Application reads only postion names of all the offers and the result is as below.

We will try to interpret that words in the first words cloud. It looks like companies are looking for people that will solve the big problem with data. They look programmers that will lead with interpeting data programatically. Probably most companies believe that solution of the problem is with Java language and many scientific methods to analize and classify bit data sets.

It is quite usefull to use cloud computing and different services. The challenge is with integration different systems to communicate each other. And the most important thing is that we are talking about analising business data. It’s interesting but worth to ask: what will be in the next 2018 year ?

word cloud from IT job position names

Cloud of words was generated from over 1000 IT job offers names from job portal

Mostly used programming technologies from IT job requirements

The second words cloud and all the rest were prepared according to the results from all the job offers in the The main benefits of this portal is that we can easily see what technology stack is required by the companies from the new workers. I analized all the words from the offers and because of the big number of them I needed to create four groups of words clouds.

First of all let’s have a look into the first words cloud programming technologies created from I listed below all the most used words:

  1. Jira
  2. Confluence
  3. Git
  4. Scrum
  5. Kanban
  6. Jenkins
  7. AWS
  8. Java
  9. JavaScript
  10. Sql
  11. NoSql
  12. MySql
  13. ElasticSearch
  14. PostgreSQL
  15. MongoDB
  16. REST
  17. API
  18. SVN
  19. GitHub
  20. PHP
  21. Scala
  22. Python
  23. AngularJS
  24. Docker
  25. Spring
  26. GitLab
  27. Linux

All these words can be logically grouped into:

  1. Systems to project and knowledge management: Jira, Confluence.
  2. Agile methodologies to work in the projects: Scrum, Kanban.
  3. File version control systems like: Git, SVN, GitHub.
  4. Continuos integration systems: Jenkins, GitLab.
  5. Clouds: AWS (Amazon Web Services).
  6. Programming or script languages: Java, JavaScript, PHP, Scala, Python.
  7. Sql and NoSql databases: MySql, PostgreSql, MongoDB, ElasticSearch.
  8. Containers: Docker.
  9. Systems: Linux.
  10. Programming frameworks: AngularJS, Spring.

These lists will be usefull for me to create next interesting posts about all these excited technologies.

Cloud words from mostly used programming technologies words

Cloud words from mostly used programming technologies words in IT job requirements

Next top programming technologies from IT job requirements

Most of terms in the third cloud of words are the top technologies used by programmers and some of them are platform specific. Probably you don’t need to know all of these technologies in practical usage.

  1. Programming and web languages like: Java8, Html, C# .Net, Ruby
  2. Messaging queues: RabbitMQ
  3. Sql and NoSql databaes: SQLServer, Oracle, ElasticSearch, Cassandra, Redis
  4. Javascript frameworks: React, jQuery, Node.js
  5. Processes in coding like: pair programming, code reviews, tests and coverage tests, unit tests
  6. Continuos integration (automation) systems: Bamboo, Gradle, Ansible
  7. Code analysis tools: Sonar
  8. Tools for building distributed application systems: Akka
  9. Tools for projects automation: Maven
  10. Knowledge management systems: SharePoint, Wikipedia (Wiki)
Cloud words from second set of mostly used words in IT job requirements

Cloud words from second set of mostly used words in IT job requirements

Programming technologies that makes a difference between specialists

This lists of IT terms is probably this ones that makes the difference between good and very good programmers. We have here almost all known programming frameworks and specific tools. Let’s analize them all:

  1. Programming languages frameworks: Symfony3, Symfony 2, Zend, Laravel, ReactJS
  2. Standard libraries: STL Boost
  3. Languages: C++11, Ruby on Rails
  4. Big data platforms or tools: Hadoop
  5. Control version systems: BitBucket, Subversion, TFS
  6. Continous integration systems: Build Server, Circle CI, Vagrant
  7. Tests: PHPUnit, 80% coverage
  8. Architectures: ASP.Net MVC, Microservices
  9. Methodologies: Agile
  10. Clouds: Microsoft Azure, Google Cloud
  11. Soft skills:
  12. Project management systems: Trello, Redmine
  13. Programming environments: Visual Studio
  14. Rules, principles: OOP, OOD, SOLID
Cloud words from third set of mostly used words in IT job requirements

Cloud words from third set of mostly used words in IT job requirements

Rarely used programming technologies in IT job requirements

In conslusion we have the list of the most used technologies presents the top skills needed in daily programming. Most of names we have in the cloud shows the scale that every programmer needs to know to stay top specialist. Let’s have a look at these terms:

Cloud words from rarely used words in IT job requirements

Cloud words from rarely used words in IT job requirements

Leave a Reply