Cómo crear un equipo interno de desarrollo Shopify

Shopify · 11 min de lectura

Jerry Abrahamson

Jerry Abrahamson

Fundador y CEO • 25 de octubre de 2021

Cómo crear un equipo interno de desarrollo Shopify

Toda empresa que quiere entrar en el ecommerce acaba teniendo que decidir si externaliza el desarrollo o lo mantiene dentro de la organización.

Es una decisión crucial que los directivos no deben tomar a la ligera, porque influirá mucho en el éxito o fracaso de la empresa. Algunas prefieren un equipo interno dedicado que atienda las necesidades según surgen; otras creen que las ventajas de externalizar superan ampliamente los inconvenientes.

VENTAJAS E INCONVENIENTES DE UN EQUIPO INTERNO

Si quieres crear un equipo interno, considera estos aspectos:

Ventajas

  • Respuesta rápida: un equipo interno disponible puede cumplir tus objetivos de desarrollo con rapidez. Resulta especialmente útil cuando aparecen problemas que necesitan atención inmediata y una solución rápida antes de una investigación completa. Tener personal a mano permite abordar problemas pequeños antes de que crezcan. No tendrás que esperar a un equipo externo que quizá esté ocupado o que tardes en encontrar.
  • Comunicación más fácil: compartir oficina o edificio facilita las conversaciones cara a cara. Tratar directamente con los desarrolladores ayuda a integrarlos en tu cultura y a atender tus requisitos exactos. La comunicación directa es esencial para evitar errores costosos y cambios que deban deshacerse; solo el equipo interno te ofrece esa oportunidad.
  • Control total: un equipo especializado que se centra únicamente en tus necesidades de ecommerce garantiza que la plataforma se construya según tus especificaciones. Puede atender de inmediato tus necesidades con modificaciones concretas basadas en tus indicaciones y estrategia. Tendrás control sobre cada aspecto del proyecto para que cumpla tus expectativas.
  • Ser el único cliente del equipo interno podría permitirte trabajar con más eficiencia.
  • Según tu forma de operar y el volumen de trabajo o proyectos, un equipo interno podría costar menos.

Inconvenientes

  • Rotación de personal: en tecnología es conocido que la mayoría de los desarrolladores no permanece mucho tiempo en una empresa. Hay gran demanda de especialistas y los competidores contactan a menudo con los más competentes. Debes prever interrupciones frecuentes por entradas y salidas. Encontrar sustitutos lleva tiempo y perder a alguien en un momento crítico puede ser caro. También considera los costos de búsqueda, evaluación, contratación e incorporación al comparar con la externalización.
  • Mayor costo: reunir desarrolladores a tiempo completo exclusivamente para tu empresa es caro, sobre todo para negocios pequeños. Son profesionales valorados que pueden obtener salarios altos en distintas empresas. Contratarlos por una remuneración fija para que se dediquen solo a ti es un lujo al alcance de pocas organizaciones. Su elevada demanda obliga a satisfacer adecuadamente sus expectativas salariales para evitar que busquen otras oportunidades.
  • El tiempo no se aprovecha siempre: es difícil que un equipo a tiempo completo trabaje en proyectos de alto nivel cada minuto del día. Dar descansos no tiene nada de malo, pero cuesta más aceptarlo cuando pagas salarios de especialistas. Pagas tanto por las tareas grandes y pequeñas como por el tiempo que pasan fuera de la oficina.
  • Depender de unos pocos equipos internos impide aprovechar el aprendizaje mutuo de equipos más grandes, habitual en agencias grandes.
  • Con un equipo interno es más difícil crear una cultura que valore el rendimiento, la accesibilidad y otros aspectos.
  • Mantener la calidad del código puede ser difícil.

Uno de los mayores riesgos de internalizar el desarrollo es que baje la calidad y se abandonen los procesos gradualmente. Es fácil publicar cambios improvisados, descuidar el rendimiento o reducir el control de calidad. Por eso conviene que el responsable de producto supervise el proceso o que haya un responsable técnico de proyectos con experiencia para dirigir al equipo.

ESTRUCTURA DEL EQUIPO INTERNO

La estructura depende de la empresa, las habilidades de cada persona y la complejidad de otros sistemas, del sitio Shopify y del trabajo de interfaz. Antes de empezar, asigna responsabilidades y cargas de trabajo por área según las tareas pendientes y la hoja de ruta. Por ejemplo, lanzar varios sitios sencillos con temas distintos generará más trabajo para un desarrollador de interfaz de nivel intermedio.

No dependas de una sola persona para todo el desarrollo: evitarás que el código y el conocimiento queden ligados a ella y que empeoren los estándares y la calidad. Las solicitudes de incorporación y las revisiones de código ayudan, pero requieren al menos dos desarrolladores.

Esta estructura funciona en muchas empresas tecnológicas y puedes adoptarla:

Desarrollador principal o sénior de Shopify

Empieza con un desarrollador de pila completa que conozca Shopify y tenga experiencia en proyectos grandes. Esta última es especialmente importante: sabrá trabajar sistemáticamente, promover herramientas modernas y establecer un flujo de desarrollo. Colaborará con el responsable de producto o de proyectos en recursos, publicaciones, planificación y prioridades. También diseñará la arquitectura de integraciones, aplicaciones propias y proyectos más complejos.

Desarrollador de interfaz de nivel intermedio o júnior

No siempre es imprescindible contratar especialistas de interfaz, porque el desarrollador de pila completa puede asumir esas tareas. Sin embargo, la mayoría prefiere contar con ellos para crear diseños de alta calidad y fieles al detalle. Aunque tengan menos experiencia en algunas áreas que el sénior, podrán resolver tareas de interfaz, aplicaciones, lógica básica de Liquid y otras.

Si eliges una arquitectura desacoplada, probablemente cambiarán los requisitos y necesitarás experiencia en Vue.js o React.js.

Recursos de sistemas

También es importante tener un equipo dedicado a los demás sistemas internos, responsable de integrarlos.

Antes de decidir, cuantifica el trabajo previsto en cada área. Una lista de tareas y una hoja de ruta a largo plazo te ayudarán a calcular los recursos necesarios y cómo cambiarán con el tiempo.

HERRAMIENTAS Y HABILIDADES DE DESARROLLO

No basta con contratar a alguien suponiendo que hará un gran trabajo porque ya ocupó ese puesto. Antes de crear el equipo, identifica las habilidades esenciales y las adicionales que pueden aportar valor.

HABILIDADES PRIORITARIAS

Sintaxis de Liquid

Liquid es el lenguaje de plantillas de interfaz de Shopify y permite aplicar lógica a sus plantillas. Puede servir para recomendaciones de productos basadas en datos o para algo tan sencillo como añadir una etiqueta de oferta en el listado de productos.

Con conocimientos de Ruby o JavaScript no es demasiado difícil aprenderlo trabajando. Pero dominarlo y tener experiencia permite avanzar de inmediato sin que la curva de aprendizaje perjudique la calidad del código.

JavaScript puro

JavaScript estará presente en cualquier diseño Shopify; la cuestión es cuánto. Controla lo dinámico, desde animaciones hasta formularios que no recargan la página. Muchas funciones clave, como añadir al carrito, dependen de él. Entender al menos JavaScript puro es esencial.

HTML5

Es necesario comprender un marcado de calidad y su impacto en rendimiento, SEO y accesibilidad, además de reproducir un diseño visual. También hay que detectar cuándo un diseño impedirá un funcionamiento eficiente.

SCSS

Todo desarrollador de interfaz debe conocer este preprocesador CSS, habitual para crear y mantener hojas de estilo.

OTRAS HABILIDADES

Ruby/PHP

Una ventaja de Shopify es que no tenemos que considerar esenciales las habilidades de servidor, porque no exige programación como tal. Ese conocimiento ayuda en tareas de datos que requieren aplicaciones o software intermedio. Sin embargo, con pequeños ajustes ya hay aplicaciones para muchas necesidades comunes, como inteligencia empresarial o intercambio de datos con un ERP.

GraphQL

Además de reducir el código necesario con aplicaciones para casi todo, Shopify ha promovido GraphQL como futuro del desarrollo de API. Es un lenguaje abierto de consulta y manipulación de datos y un entorno de ejecución para resolver consultas con datos existentes. Si tu empresa necesita manipular datos o añadir funciones de servidor, conviene contar con alguien que lo conozca.

React/Vue.js

Si tienes una tienda o quieres crearla y trasladar el desarrollo a tu empresa, pregunta primero si se construyó con React o Vue.js. Si planeas funciones más especializadas, conocerlos a fondo también puede ayudar, porque son los dos marcos más utilizados.

PROCESO DE DESARROLLO

Una vez conocidas las habilidades necesarias, asegúrate de disponer del proceso adecuado. Veamos cómo organizarlo.

Pruebas de control de calidad

Tras seleccionar y desarrollar un proyecto de la lista de tareas, debe pasar por pruebas y control de calidad rigurosos para garantizar la calidad de lo publicado. El primer paso es utilizar automatización como primera línea de protección del equipo interno. Puede incluir:

  • Pruebas de instantáneas que comparan capturas de partes de la interfaz para detectar modificaciones incorrectas tras un cambio de código.
  • Solicitudes de incorporación en GitHub o Bitbucket para revisar y comentar cada cambio antes de integrarlo.
  • Una batería de pruebas JavaScript con herramientas como Cypresso.io, Jest y Circle, ejecutadas automáticamente en cada confirmación de código y que solo permitan integrar cuando todas pasen.

También es esencial que el responsable de producto o responsable técnico de proyectos sea una persona distinta del desarrollador. Debe comprobar que el resultado cumple el encargo. Cuanto más claras sean las descripciones de tareas, menos devoluciones para corregir harán falta.

Publicación de cambios

Debe existir un procedimiento concreto que se siga sistemáticamente. Los desarrolladores con experiencia en equipos exitosos conocerán la mayoría de estas prácticas:

  • Las tareas grandes pueden realizarse de forma aislada sin afectar al trabajo simultáneo; para eso Shopify ofrece temas específicos por función. Debes documentarlo en Git para evitar problemas al integrar varias tareas en el código principal.
  • Las publicaciones deben respetar ciertos parámetros. En algún momento se pondrá a prueba la perspectiva del responsable de producto, pero seguir un proceso de publicación es más seguro para evitar desastres.
  • Comprueba siempre el funcionamiento en un tema de pruebas antes de publicar los cambios en el tema visible para todos.

Gestión de tareas

Existen varias herramientas de gestión de tareas; Trello me resulta útil. Puedes buscar otras, aunque la mayoría hace lo mismo.

Cada tarea debe comenzar en una lista ordenada que sirva como hoja de ruta del sitio. Un proceso sólido exige constancia y transparencia. Cada tarea debe incluir al menos:

  • Título
  • Descripción
  • Criterio de finalización que indique qué hace falta para darla por terminada
  • Fecha límite
  • Tareas relacionadas o dependientes
  • Tiempo estimado

REFLEXIONES FINALES

Elegir entre desarrollo interno y externo es difícil. Algunos comerciantes combinan ambos: el equipo interno mantiene los proyectos centrales cotidianos y externalizan funciones que requieren habilidades complejas.

Así acceden a más talento sin asumir demasiados riesgos y reducen costos fijos. Sin embargo, elegir al socio adecuado para combinar ambos modelos es crucial.

No hay una respuesta única al debate. Lo que funciona para una empresa puede no servir a otra. Empieza evaluando tus necesidades y recursos para decidir qué te conviene.

Jerry Abrahamson

Escrito por

Jerry Abrahamson

Jerry es el fundador y CEO de Chargezen, y ayuda a las marcas a construir negocios omnicanal sostenibles. Con más de 10 años de experiencia en comercio omnicanal y SaaS, le apasiona ayudar a las marcas a crear fuentes de ingresos recurrentes.

¿Listo para hacer crecer tus ingresos por suscripciones?

Únete a las marcas líderes que usan Chargezen para reducir cancelaciones, aumentar ingresos y automatizar operaciones.

Empezar
El espacio, al alcance de tu mano

¿Qué harías con un 22 % más de ingresos?