Tienes diferentes formas de segregación.
Es mejor seleccionar un método de segregación, si está buscando el “rol”, realmente depende de la empresa y de cómo quieren dividirlo.
No existe una segregación de trabajos “general” ya que cada empresa tiene varios niveles de especialización. Por ejemplo, en Amazon, técnicamente podría estar en un equipo que solo se enfoca en el procesamiento de pagos.
- Me gusta la informática pero no sé por qué lo estoy haciendo. ¿Qué tengo que hacer?
- ¿Cuáles son las mejores oportunidades para los estudiantes que hacen CS?
- ¿Qué es un buen menor junto con Computer Science si quiero abrir mis propios negocios en el futuro?
- Soy un estudiante de CSE de primer año. ¿Cómo comienzo a trabajar en proyectos y escribir trabajos de investigación?
- ¿Se requiere realmente un título en informática para ingresar a los trabajos de programación?
Algunos de estos enfoques están más cerca de los administradores del sistema o las tareas de ingeniería que no son de software, como DevOps. En las empresas más pequeñas, un programador puede asumir estas tareas, pero generalmente se deja a una SA.
Lo más básico de “Clustering”
Desarrollador de software – Code Monkey guy que generalmente es de nivel medio de entrada.
Desarrollador Senior: generalmente brinda orientación y realiza revisiones de código, a menudo puede realizar la administración como un líder técnico del equipo.
Arquitecto: un desarrollador senior que diseña el panorama del software y define las reglas por las cuales trabajan los desarrolladores.
Diseñador front-end: algunos lugares tendrán diseñadores en el front-end para crear una interfaz de usuario más limpia y nítida, a menudo también son fuertes en tecnología “front-end” y pueden o no ser programadores.
Roles de apoyo comunes:
DevOps: SA o enlace para SA para determinar las necesidades del sistema de desarrollo y las necesidades de implementación de producción.
QA: por lo general, un equipo de soporte para garantizar la funcionalidad del software
Gerentes de producto / proyecto: a menudo (generalmente preferible) personas que no son desarrolladores que son buenos para traducir el discurso de las personas normales en el lenguaje “técnico”. Además, pueden ejecutar interferencias y mantener a los usuarios comerciales informados sin interrumpir al equipo de desarrollo. Esto a veces (desafortunadamente) se aplica a los miembros del equipo senior.
DBA: esto a menudo se incluye en el equipo de desarrollo, y fuera de algunas necesidades serias de la base de datos no es un gran problema. Sin embargo, las tiendas más grandes tienen un DBA o incluso un equipo de DBA.
Document Writer: estos son muy raros. Si bien creo que un gerente de producto puede asumir fácilmente este rol, a menudo el equipo de desarrollo se hace responsable de la documentación. Sin embargo, hay algunas compañías que se dan cuenta de que los desarrolladores son muy malos para documentar y, en cambio, contratan a un escritor. (Si no cree que leí alguna documentación de Sun Engineers en el pasado, es sorprendente que alguien pueda descubrir cómo programar Java).
Algunas compañías tendrán otras funciones, como ingeniero de implementación, administradores de versiones y equipos de construcción. Sin embargo, creo que esta es una lista bastante completa.