Decimodan
April 19, 2020

10 habilidades a tener en cuenta como desarrollador en 2020

La tecnología evoluciona constantemente y por tanto las habilidades que debes tener como desarrollador deben estar al día.

A medida que la transformación digital está siendo adoptada por las empresas, la cultura de la “centralización del dato”, la Inteligencia Artificial, la automatización, entre otros, empiezan a liderar las estrategias.

Esto impulsa la demanda de habilidades relacionadas con todo esto, como lo es la creación y gestión de contenedores o el cloud computing.

Por tanto, conocer las habilidades más demandadas en las empresas es fundamental para los desarrolladores.

La consultora Indeed.com analizó las ofertas de trabajo de los últimos 5 años, para descubrir las tendencias y ver que tecnología va a la alza. Ademas, datos de CIO nos muestran que **Docker ** ha subido 4000% de popularidad en ese tiempo.

Ansible está aumentando en popularidad dentro de este mismo periodo, igualmente Kafka, principalmente en el desarrollo de canales de datos en tiempo real y streaming.

Esto junto al análisis que ya habíamos hecho ademas de este otro, este es un análisis de las habilidades que más importancia tendrán en el futuro cercano de cara a conseguir un puesto de trabajo:

1) Pytorch

Pytorch

Pytorch

La librería de desarrollo basado en Python y se está convirtiendo rápidamente en el “estandarte” en el mundo de machine learning. Su principal desarrollador es el Laboratorio de investigación de Inteligencia Artificial de Facebook, sin embargo, puede obtenerse de forma gratuita con una licencia modificada.

2) GraphQL

GraphQL

GraphQL

Con el auge de los microservicios y esquemas arquitectónicos de software orientados a la nube, surgió este lenguaje para APIs de query y manipulación de datos. Liberado al público en 2015 por Facebook.

Desde mi punto de vista, es el siguiente nivel de REST y vale mucho la pena su implementación y uso.

3) Kotlin

Kotlin

Kotlin

Como ya habíamos dicho, Kotlin es un lenguaje de programación de propósito general multiplataforma diseñado para interactuar con Java. Su futuro en Android y el cada vez mayor uso de la programación reactiva, lo están convirtiendo en el preferido de muchos programadores.

4) VueJS

VueJS

VueJS

Como hemos visto varias veces, es un framework de desarrollo Javascript. Permite crear todo tipo de aplicaciones (web, móviles, PWA, etc…) y es utilizado en proyectos de gran envergadura con mucho éxito.

5) .Net Core

.Net Core

.Net Core

Es el sucesor multiplataforma para el framework .Net de Microsoft y se liberó bajo licencia MIT. Se usa para desarrollo de aplicaciones de escritorio, Inteligencia Artificial, Machine Learning y IOT.

6) Looker

Looker

Looker

Plataforma de Business Intelligence y comprada por Google Cloud en 2019. El lenguaje de modelado LookML, permite a los equipos poder desarrollar dashboards de forma muy potente.

7) Terraform

Terraform

Terraform

Software de “Infrastructure as Code” que permite a los usuarios definir un centro de datos mediante el lenguaje HCL o JSON. Es compatible con casi todos los proveedores de cloud.

8) Google Cloud

Google Cloud

Google Cloud

El servicio de Cloud Computing que se ejecuta en la misma infraestructura que usa Google. Ofrece multitud de herramientas de IaaS y Serverless.

9) Kubernetes

Kubernetes

Kubernetes

Diseñado por Google, es un sistema de orquestación de contenedores para automatizar el despligue de los mismos, además se puede controlar todo lo relacionado al escalado y gestión. Usado por muchos en producción con excelentes resultados.

10) Spring Boot

Spring Boot

Spring Boot

Al igual que vimos con GraphQL, el auge de la creación de microservicios ha elevado la popularidad de Spring Boot.

Se utiliza regularmente para crear aplicaciones de este tipo en un entorno basado en Java.

Utilizado por muchas empresas en producción, desde mi punto de vista el que ha aportado más a su éxito es Netflix, debido a la enorme cantidad de herramientas creadas para el.

Conclusiones

Desde mi punto de vista, este es un panorama general del mundo del desarrollo de software actual, sin embargo, estoy consciente que puede ser una visión un poco sesgada dependiendo de los entornos específicos, sin embargo, te invito a comentar cuales otros tendrían que estar.

Contáctame

O simplemente mándame un saludo 🙈