Tu próximo paso profesional como desarrollador de software

blogcareer


Enfoque de la empresa

¿Qué opciones tienes en cuenta a la hora de elegir tu carrera profesional? ¿Qué tipo de empresa te conviene más?

¿Deberías seguir el camino aparentemente fácil y empezar como autónomo, con la esperanza de obtener mayores beneficios a corto plazo? ¿O seguir el camino estándar de junior a senior? ¿Qué significan estos rangos y qué viene después?

En mis 13 años de carrera técnica, siempre he buscado una buena empresa. Pero, ¿qué hace buena a una buena empresa?

Para responder a estas preguntas, lee mis próximos artículos. En ellos, intentaré cubrir algunas de las cosas más importantes a tener en cuenta:

  1. Enfoque de la empresa: ¿Qué tipo de trabajo hará tu empresa ideal?
  2. Tamaño de la empresa: ¿Es una startup, una corporación o algo intermedio? ¿Y cómo puedes ascender en la escala profesional de la empresa?
  3. Apropiación: ¿Se te dará la oportunidad de asumir la responsabilidad y la iniciativa de tu trabajo?
  4. Más allá de la contratación: ¿Te apoyará RRHH hasta el final? ¿Cuál es la cultura de la empresa?

Para un desarrollador sin experiencia, podría parecer que la pregunta más importante sobre la empresa es «¿qué lenguaje de programación o biblioteca frontend utilizáis?» o «¿utilizáis Scrum en vuestros proyectos?».

Pero pronto te darás cuenta de que, a medio y largo plazo, estas preguntas no tendrán mucha repercusión en tu experiencia y tu carrera. Empecemos por lo que realmente importa: en primer lugar, el enfoque de la empresa.

¿En qué vas a trabajar?

Hay varios tipos de empresas de desarrollo de software, que difieren en lo que hacen a diario.

Por ejemplo, puedes trabajar en una empresa de productos. Las empresas de productos varían en la definición del producto que fabrican: puede ser cualquier cosa, desde un plug-in hasta un gran SaaS.

Cuando trabajas en un producto de software, tienes que manejar la complejidad técnica y de procesos. Te ayudará tener la oportunidad de trabajar con otras personas con mentalidad de producto y profundizar realmente en la tecnología que hace un producto.

Profundizar creará oportunidades de especialización, pero introducir nuevas tecnologías puede ser un reto mayor para una empresa de productos. Se requiere un esfuerzo adicional para introducir una nueva tecnología cuando ya se ha invertido mucho en la actual.

Además, el futuro de una empresa de productos está ligado al futuro del producto que fabrica, y eso representa un mayor grado de riesgo que el que encontrarías, por ejemplo, en una empresa de servicios.

Sería bueno que tuvieras en cuenta estas cosas cuando salgas a la caza de tu próximo lugar de trabajo y no te contengas a la hora de preguntar a la empresa cómo es su visión del producto, su estrategia y su gestión, o cómo se mantienen al día con las nuevas tecnologías.

Luego están las empresas de desarrollo a medida. Estas empresas ayudan a otras organizaciones con sus proyectos, a menudo trabajando con una amplia gama de tecnologías. A veces, estas empresas trabajan con varios clientes en un ámbito empresarial o técnico concreto, o incluso pueden trabajar para un solo cliente, en cuyo caso básicamente están haciendo desarrollo interno. Para ti, esto significa más amplitud en cuanto al tipo de trabajo al que te enfrentas cada día. Cada nuevo proyecto puede representar la oportunidad de probar nuevas tecnologías y conocer nuevos ámbitos empresariales.

El presupuesto y los plazos de los proyectos pueden dar lugar a concesiones y compromisos que a ti, como ingeniero, no te gustarán. Además, la presión por construir cosas rápida y eficazmente puede dar lugar a veces a mucha deuda técnica sin gestionar, y también puedes encontrarte realizando varias tareas a la vez entre proyectos y ocupándote de antiguas correcciones de errores y solicitudes de cambio.

Para evitarlo, busca empresas con una especialización estrecha y una gran experiencia en el dominio.

Pregunta también por los marcos de trabajo actualmente en vigor, porque los marcos obligatorios pueden ayudar a las organizaciones a garantizar la normalización y la productividad en todos los proyectos. Pero también conlleva el reto de hacer evolucionar los marcos para seguir el ritmo de las tendencias tecnológicas y mantenerlos «adecuadamente ligeros». No querrás trabajar con un marco sobredimensionado que se convierta en una carga para los desarrolladores.

Hay otros factores empresariales y organizativos que pueden impedir que se produzcan las compensaciones mencionadas, y mencionaré algunos de ellos en los siguientes artículos.

Ya he mencionado las empresas de desarrollo interno, que básicamente se encargan de dar soporte a su negocio con software creado internamente. Algunos equipos de desarrollo internos se han vuelto tan buenos en lo que hacen que han ampliado sus servicios y los han comercializado. Amazon AWS es un buen ejemplo.

Trabajar en este tipo de empresa puede ser similar al desarrollo de productos desde una perspectiva técnica. Quizá el mayor reto al que te enfrentarás sea lograr un entendimiento compartido con la dirección sobre cuál es la estrategia de la empresa y cómo encaja el desarrollo en esa estrategia. Si los desarrolladores siguen refiriéndose a la dirección como «ellos» que no nos entienden a «nosotros», los desarrolladores, es una clara señal de que gran parte de tu energía se gastará en política interna en lugar de hacer el trabajo real.

Intenta preguntar a tu jefe cómo ayudan sus proyectos a la organización a alcanzar sus objetivos. Intenta que hable de por qué es importante su software y de quiénes son sus clientes. Si están trabajando en una aplicación que apoya el proceso de ventas, sus clientes deberían ser los clientes de la empresa, no las propias ventas. Si es así, sabrás que esos equipos están alineados en la estrategia.

Hay otros tipos de empresas de desarrollo de software, pero mencionaré un último ejemplo. El desarrollo de plataformas, normalmente emparejado con la consultoría empresarial.

Considero que se trata de una empresa que trabaja con plataformas de software existentes y suele dar soporte a procesos empresariales específicos. Por ejemplo, una empresa especializada en implantar y ampliar plataformas como Salesforce, Gestión de Relaciones con los Clientes (CRM), o SharePoint, Sistema de Gestión Documental (DMS) o sistemas de Planificación de Recursos Empresariales (ERP).

Descubrí que en este tipo de empresa, los límites entre las funciones son más difusos. A veces se espera que lleves un sombrero de analista o consultor empresarial, además de tener sólidos conocimientos de programación.

Desde una perspectiva técnica, necesitas adquirir más conocimientos específicos de la plataforma. Por un lado, debes conocer a fondo las ricas capacidades de la plataforma y, por otro, las opciones de personalización y sus limitaciones. El desarrollo en la plataforma debe considerarse siempre como el último recurso, y debes intentar implantar los procesos empresariales utilizando funciones configurables de la plataforma.

Al implementar funciones en la plataforma, lo más probable es que los procesos empresariales de los clientes se vean afectados y modificados. Este tipo de situación te expondrá al aspecto de consultor del trabajo. Aunque tengas un papel de consultor de plataforma dedicado en un equipo, seguirás necesitando tener un poco de mentalidad empresarial para una buena colaboración tanto con los consultores como con los clientes.

Te aconsejo que consideres este tipo de empresa para especializarte a largo plazo si te gusta optimizar los procesos empresariales con plataformas complejas muy evolucionadas.

Cuando consideres este tipo de empresa, pregúntales cuántas funciones tienen en un equipo y cómo es el proceso de incorporación. Esto te dará una idea de cuánto apoyo puedes esperar mientras sigues una pronunciada curva de aprendizaje de la plataforma.

¿Dónde te ves más?

He trabajado en los cuatro tipos de empresas mencionados y, para mí, las empresas de productos siempre han sido las más agradables y gratificantes. Mejorar continuamente y ampliar productos, procesos y equipos es donde me siento más desafiada y capaz de poner en práctica mis habilidades.

Por ejemplo, aquí en Microblink, tenemos una docena de equipos de I+D que trabajan en uno solo de nuestros productos. Se ocupan de todo, desde la preparación de los datos en nuestra plataforma de IA, el desarrollo del aprendizaje automático, la integración específica de la plataforma, hasta el diseño UX (puedes ver cómo es esto aquí).

Por supuesto, cada empresa de desarrollo de software es diferente y este artículo sólo está aquí para servirte de punto de partida en tu próximo viaje.

Dicho esto, ¿dónde crees que encajarías mejor? Me encantaría saberlo; no dudes en enviarme un mensaje con tus ideas.

Darko Ilić-Šikelj
Director de Soluciones Básicas y Productos Web

octubre 19, 2021

Descubre nuestras soluciones

Explorar nuestras soluciones está a un clic de distancia. Prueba nuestros productos o habla con nosotros con uno de nuestros expertos para profundizar en lo que ofrecemos.