Artur Ter-Stepanyan de CodeRiders comparte información convincente sobre sus proyectos de subcontratación de software

Publicado: 2023-02-06

Los desarrolladores e ingenieros de software odian hablar; la mayoría de nosotros hemos escuchado esta frase al menos una vez. Pero sea cierto o no, necesitamos opiniones directamente de profesionales. Nadie puede compartir conocimientos más profundos sobre el proceso de desarrollo de software que los propios desarrolladores e ingenieros.

CodeRiders continúa su serie de entrevistas con nuestros principales desarrolladores e ingenieros de software. Anteriormente, compartimos los viajes de nuestros empleados en TI junto con sus habilidades técnicas y sociales como ingenieros de software remotos profesionales.

Esta vez procedemos con nuestro desarrollador de software full-stack, Artur Ter-Stepanyan, quien comparte su opinión sobre la gestión de subcontratación de software, los equipos Scrum y sus proyectos favoritos.

Sobre Artur Ter-Stepanyan

Artur es desarrollador de software sénior en la empresa de desarrollo de software CodeRiders. Es uno de los mejores alumnos de CodeRiders, ya que formó el equipo central en 2016.

Si ha estado siguiendo CodeRiders por un tiempo, es posible que ya sepa que CodeRiders ingresó a la industria internacional de TI como una escuela local de desarrollo de software en 2013. En solo un año, la escuela entregó más de 800 alumnos, 17 de los cuales formaron CodeRiders. empresa de subcontratación de software en 2014.

Artur ha contribuido mucho al reconocimiento internacional de CodeRiders como una de las mejores empresas de externalización de software del mercado. Ha trabajado con sus colegas en algunos de los proyectos de subcontratación de software más desafiantes y complejos. Artur es uno de nuestros desarrolladores de software que trabaja arduamente y ha obtenido críticas positivas de los clientes para nuestra empresa. También ha participado activamente en la representación de nuestra empresa durante varios eventos; el último ha sido la Feria Comercial Internacional Hannover Messe 2022 en Hannover, Alemania.

¡Empecemos desde el principio!

Hola Arturo. Gracias por tomarse el tiempo para hablar con nosotros. Comencemos con algunos antecedentes sobre usted y su viaje para convertirse en un desarrollador de software exitoso. ¿Cómo llegaste a CodeRiders?

Hola. Gracias por la oferta. Creo que muchos desarrolladores de software armenios se identificarían con mi historia. Ya he estado trabajando en la industria de TI durante 7 años, pero convertirme en desarrollador de software no era mi sueño de la infancia, y el desarrollo de software tampoco era mi especialidad en la universidad. Como adulto joven normal, estaba interesado en muchas profesiones al azar, incluida la medicina y la atención médica. Quería elegir una profesión que realmente me interesara. Al final del día, es en lo que vas a pasar la mayor parte de tu tiempo. Sin embargo, tampoco me olvidé del salario medio de determinadas profesiones y sus entornos.

Cuando estaba buscando una oportunidad profesional tan perfecta, mi hermano trabajaba en CodeRiders como director del departamento de desarrollo comercial. El fundador y CTO de la empresa es amigo de la infancia de mi hermano. Entonces, la compañía ya era reconfortante para mí. Me sugirió que me inscribiera en sus cursos de PHP, Laravel y JavaScript para ver si me interesaba la programación. A mediados de la década de 2000, la industria tecnológica ya estaba floreciendo en Armenia. La gran mayoría de los recién graduados prometedores eligieron profesiones como desarrolladores de software, ingenieros, arquitectos, evaluadores (especialistas en control de calidad), PM y especialistas en marketing digital, y la industria de TI era muy sólida y estaba llena de un millón de oportunidades. Armenia estaba en camino de convertirse en el próximo centro tecnológico del mundo.

Entonces, decidí probarlo y, como pueden ver, fue una excelente elección. Me encontré en el desarrollo de software, y el equipo era perfecto para mí. Después de terminar con éxito la escuela de desarrollo de software, me contrataron como desarrollador de software back-end en 2016. CodeRiders es mi primer y único espacio de trabajo. Hemos creado un ambiente donde la frase “soy solo un empleado” no es adecuada. Todos nos preocupamos sinceramente por el bienestar y la reputación de la empresa, y es increíble lo lejos que hemos llegado de ser una pequeña empresa emergente a un proveedor de software reconocido internacionalmente. Sé que encontrar un lugar de trabajo ideal en el primer intento rara vez sucede, así que lo aprecio mucho. Creo que mi éxito personal, así como el éxito de la empresa, está fuertemente relacionado con nuestra visión y dedicación. Somos como una gran familia que se ha reunido con la clara misión de ayudar a las personas a trabajar de manera más productiva y divertirse.

Mencionaste que el equipo es como una familia para ti. ¿No crea este hecho un ambiente “laxo” para el trabajo y la disciplina?

Muchos creen que ser amigo de sus colegas o tener conexiones cercanas en el trabajo perjudica la productividad empresarial/laboral. No discutiré eso porque los casos difieren. Sin embargo, en CodeRiders, esto es más como un estímulo adicional para trabajar mejor. Con CodeRiders, soy yo mismo. No estoy bajo ninguna coacción, ni siento la necesidad de presumir. Como resultado, solo me concentro en mi trabajo y hago lo que mejor hago: programación y desarrollo de software. Los buenos resultados y los comentarios positivos de los clientes demuestran la eficiencia de mi trabajo.

Describa su día laboral típico en CodeRiders.

Empezamos con una taza de café, por supuesto. Si es lunes, todos los miembros del equipo, incluido el departamento de desarrollo comercial, se reúnen por la mañana. Compartimos lo que estamos haciendo y nos aseguramos de que todos estén encaminados. Entonces todos empiezan a trabajar.

Todos trabajamos en varias habitaciones grandes y cómodas. No tenemos habitaciones separadas, lo cual es genial en mi opinión, porque trabajar juntos de alguna manera libera el estrés. Por ejemplo, durante un día de mucho trabajo, uno de los miembros de nuestro equipo puede hacer una broma y todos se ríen y continúan trabajando.

También disponemos de salas independientes para debates o videollamadas. Así, si necesitamos espacio privado y silencio, podemos trasladarnos a esas habitaciones. Para nosotros, los desarrolladores, esto suele ocurrir por la mañana y por la noche cuando tenemos llamadas con un cliente y el equipo de desarrollo de software remoto. También podemos tener varias pausas para el café cuando podemos hablar sobre diferentes temas, relajarnos y refrescar nuestras mentes. CodeRiders ofrece un modelo de trabajo híbrido, lo que significa que los empleados pueden elegir libremente entre trabajar de forma remota o en la oficina. Prefiero el trabajo interno porque disfruto estar cerca de mis colegas (mi hermano y amigos cercanos), lo que me ayuda a operar de manera aún más productiva.

¿Podría discutir su proyecto actual con más detalle?

Actualmente trabajo en una plataforma de gestión deportiva todo en uno. Su principal objetivo es agilizar la organización de los clubes deportivos. Es una de las plataformas de gestión deportiva líderes en el mercado internacional. Automatizamos la gestión de cualquier club deportivo. Cualquiera puede participar y alentar a su club local desde cualquier parte del mundo. El producto es como tener todo un equipo administrativo en el bolsillo. Ayuda al usuario a administrar fácilmente su club en cualquier lugar y en cualquier momento en todos sus dispositivos. Trabajo con ingenieros y desarrolladores de software remotos de casi todos los continentes. Tenemos varios gerentes de proyecto que trabajan en estrecha colaboración con todos los miembros del equipo técnico y el cliente.

¿Qué es lo que más le gusta de su actual proyecto de desarrollo de software?

Además de que el proyecto es grande y nunca te aburre, disfruto de nuestro proceso y metodología de trabajo. Utilizamos la metodología de desarrollo de software Scrum, que es perfecta para un proyecto tan complejo. Scrum es el marco Agile más popular y, por supuesto, sigue los 5 principios de Agile: compromiso, enfoque, respeto, apertura y coraje. En general, los modelos de desarrollo de software iterativo son muy flexibles y "amigables con los cambios". No tienes que ceñirte al plan. Con Scrum, aún puede tener éxito en el desarrollo e implementación de software, incluso si no tiene en mente la versión final del producto. Mientras tanto, a diferencia de los modelos de software de precio fijo, las metodologías iterativas de subcontratación de software garantizan que el cliente pague solo por el trabajo comprometido.

Describa su día laboral típico dentro de este proyecto. ¿Qué significa ser un desarrollador full-stack trabajando con un equipo internacional?

Nuestro equipo está formado por gerentes de proyecto, desarrolladores de software de back-end y front-end, ingenieros y evaluadores. Los gerentes de proyecto dividen el trabajo en sprints y cooperamos estrechamente para completar y probar cada sprint después de avanzar. Entonces, el proceso de desarrollo de software y la línea de tiempo se ven así:

  1. Comenzamos con la planificación del sprint. Cada sprint comienza de la siguiente manera: los desarrolladores de software, los ingenieros y los propietarios de productos discuten qué elementos de la cartera de productos (PBI) deben incluirse en el sprint. El propietario del producto es responsable de priorizar los PBI para una pantalla específica. Sin embargo, también se nos alienta a compartir nuestras opiniones, pensamientos e inquietudes sobre la decisión, lo cual es excelente. Al final, acordamos un objetivo de sprint y una acumulación de tareas realistas.
  2. El Scrum diario incluye reuniones diarias, que son llamadas de 15 a 30 minutos en las que nos registramos, compartimos nuestro progreso y revisamos nuestras actividades del día.
  3. Continuamos con las revisiones de sprint: al final de cada sprint, tenemos una reunión en línea con el equipo de gestión y mostramos nuestro trabajo final. El equipo de administración repasa las funciones de trabajo que se implementaron durante el sprint y brinda retroalimentación. Los comentarios se incorporan a la cartera de productos, lo que nos ayuda a priorizar mejor durante futuros sprints.
  4. El paso final es la retrospectiva del sprint. Este es el momento en que el equipo Scrum revisa las cosas que debemos mejorar y ofrece métodos de mejora para el futuro. Colaboramos y planificamos nuestro próximo paso en consecuencia.

Por mucho que te guste la metodología Scrum, ¿hay algún inconveniente en tu proyecto que te gustaría solucionar?

Para ser honesto, a veces siento que perdemos el tiempo. Me gusta hablar y asegurarme de que todos los miembros del equipo estén en el mismo camino. Esto, por supuesto, es la clave del éxito. Sin embargo, a veces algunas llamadas o chats son innecesarios y podemos pasar más tiempo discutiendo un problema que trabajando en un proyecto.

¿Qué se siente al trabajar con extranjeros? ¿Existen diferencias culturales?

Por supuesto, la experiencia es muy diferente, y es natural. Vivimos en diferentes entornos y tenemos diferentes hábitos, mentalidades y mentalidades. A veces no entendemos las bromas de los demás. Sin embargo, esto no es un gran problema y no daña nuestro proceso de trabajo. Efectivamente, esto es cuestión de tiempo. Cuanto más tiempo trabajemos juntos, mejor entenderemos la cultura local de cada uno. De todos modos, con todas estas diferencias, sigo disfrutando trabajar con profesionales de otros países. Esto hace que el trabajo sea aún más interesante.

¿Qué importancia tiene una buena gestión de proyectos para un desarrollador de software?

La gestión de proyectos es fundamental. Es probable que un proyecto fracase el 90 % de las veces si no existe una comunicación transparente entre el cliente y los miembros del equipo. Una sólida comprensión de las responsabilidades es imprescindible para el éxito de un proyecto.

He trabajado en proyectos que han tenido y no han tenido jefes de proyecto. En el primer caso, me comuniqué sin problemas y fácilmente con mis colegas ingenieros y desarrolladores de software. El equipo técnico a veces tenía dificultades para comunicarse con los miembros del equipo que no eran técnicos, pero era cuestión de tiempo. Esto también depende de la experiencia del desarrollador de software trabajando con personas no técnicas. Si el desarrollador de software tiene la habilidad de trabajar con miembros del personal que no son técnicos y comprende su lógica, la comunicación es simple y consume menos tiempo. De lo contrario, pueden tardar un minuto, pero volverán a encarrilarse. Los proyectos pequeños y simples ni siquiera necesitan gerentes de proyecto. Sin embargo, no subestimaré el papel de los gerentes de proyecto en proyectos pequeños. Por supuesto, gestionan la cooperación de formas más profesionales y beneficiosas.

¿Qué idiomas o pilas tecnológicas le gustaría aprender en el futuro?

Actualmente estoy explorando Unity. Es un motor de juego multiplataforma. Es muy popular, y probablemente ya lo conozcas. Unity es compatible con una variedad de plataformas móviles, de consola, de escritorio y de realidad virtual. Se utiliza principalmente para el desarrollo de juegos para iOS y Android y es especialmente popular para el desarrollo de juegos independientes (videojuegos independientes).

Una de las principales ventajas de la publicación independiente es que está disponible para un gran número de personas. Por ejemplo, los desarrolladores e ingenieros de software individuales o los pequeños equipos de desarrollo de software pueden crear sus juegos sin el apoyo técnico y financiero de los grandes editores de juegos. Juego con el motor de Unity para crear juegos en 3D y 2D, simulaciones interactivas y otras cosas emocionantes.

CodeRiders es su primer y único espacio de trabajo. Esto no sucede a menudo. ¿Porqué es eso?

No tengo un espacio de trabajo previo para comparar con CodeRiders, y nunca he pensado en dejarlo. Esto ya significa que es un espacio de trabajo único. He sido testigo del crecimiento de esta empresa de una pequeña empresa emergente a un proveedor de software establecido y reconocido internacionalmente. Confío en mis colegas y los aprecio porque somos responsables de la gran reputación de la empresa. Creo en la empresa de desarrollo de software de CodeRiders y en su visión. También tengo un miembro de la familia y la mayoría de mis amigos cercanos entre el personal, por lo que creo que estos tres hacen un resumen sólido de esta pregunta.

Terminemos esta entrevista con alguna información sobre Artur como individuo. ¿Tus aficiones e intereses?

Bueno, me gustan los deportes, especialmente el fútbol/soccer. También disfruto jugando videojuegos.

Gracias, Artur, por tomarse el tiempo para hablar con nosotros. Creo que compartió mucha información útil con nuestra audiencia.

Si necesita desarrolladores e ingenieros de software talentosos como Artur, no dude en enviarnos un mensaje rápido aquí. También estamos abiertos a discusiones libres. Déjenos su mensaje y uno de los miembros de nuestro equipo de desarrollo comercial se comunicará con usted dentro de un día hábil.