cuales son los tipos de programadores
Respuestas a la pregunta
Contestado por
2
Si te doy las definiciones de escuela no las podrás empatar con la vida real. Así que te diré los programadores modernos, en la vida real, generalmente a que se dedican y algunos comentarios. (Ojo, la clasificación es mi opinión, me la acabo de inventar).
Podemos clasificar el trabajo de programadores en varios rubros. En términos generales:
a)-Por función (En un equipo de programación grande, cual es su labor)
b)-Por tecnología / lenguaje (Por el tipo de tecnologías empleadas)
c)-Por objetivo práctico (A que tipo de programas o mercados están enfocados)
A)-Por Función:
1-Desarrolladores Front End: Que son los que realizan las interfaces gráficas de usuario; ya sea en HTML5, Jquery, QT4, .NET, ExtJS4, etc, etc... Son los programadores que se encargan de la GUI. Este tipo de programadores son famosos por darle la FORMA final a un programa. Contrario a los de Back End, ellos casi no crean clases, objetos o APIs, solo las utilizan para crear formularios, Skins, Templates, Hojas de Estilo, etc.
2-Desarrolladores Back End: Que son los que se encargan del CORE de las aplicaciones. Programan lo que hay detrás; saben de patrones de diseño, estructuras, arquitectura, clases, orientación a objetos, unit testing, etc. Ellos son los que se llevan el trabajo rudo. Sin embargo, su trabajo generalmente no se ve a pesar de formar la estructura de todo. Generalmente saben mucho de C/C++, MVC, OOP, Singletons, Factory y otras tecnologías de desarrollo.
3-Equipo de QA (Quality Assurance): Son los testers de los equipos de desarrollo. Se sientan a picarle al trabajo de los demás para encontrar errores. Si son juegos puede ser entretenido, pero generalmente QA es un trabajo aburrido. Saben mucho de control de calidad, estándares, normatividad, etc.
4-Diseñadores: Son los que crean el arte de un programa; los assets, sprites, canvas, dibujos, animaciones, Flashes, etc. etc. No hay mucho que decir.
5-Team Leaders o Project Managers: Son los directores de la orquesta. Saben mucho de proyectos, metodologías, trabajo en equipo, SCRUM, Xtreme Programming y se encargan de orquestar un calendario de desarrollo y llevarlo a la práctica. Generalmente estuvieron muchos años.
B)-Por tecnología y Lenguaje: (NOTA: Tema muy polémico, para desatar guerras)
Hay decenas y decenas de lenguajes de programación. Pero para términos prácticos, existen 3 GRANDES competidores en infraestructura de programas que llevan la batuta de las tecnologías:
1-.NET: Los fanboys de Microsoft. Saben de C# o Visual Basic y generalmente programan .NET, Silverlight y otras bazofias Microsoft. Estos programadores tienen mucha demanda, les pagan bien y generalmente hacen aplicaciones que corren en Windows o Internet Explorer. Muchos aman a .NET, otros simplemente lo odiamos (Por ser Microsoft) Estos programadores no tienen otra opción que usar su Visual Studio en un Windows.
2-JAVA: Los fanboys de JAVA, que hoy en día son poco menos que esclavos de Oracle. Ya no es el Java de Sun Microsystems que solía ser fabuloso. Las personas que programan tecnologías Java generalmente son las mejor pagadas, pero la curva de aprendizaje es muy dura. Puede ser para móviles, para Android, para servidores, aplicaciones Enterprise, etc. Usan J2EE, JSF, JDK, Struts, Hybernate y aman IDE's como Eclipse para programar. Aunque existen decenas de buenas IDE's para Java. Hay programadores Java que usan Windows, Linux, Solaris, etc. La desventaja es, que el mercado de Java cada vez es menor.
3-Open Source: Este tipo de programadores son los mas versátiles y es difícil enumerar todos los estilos. Generalmente programan en Linux, usan todo tipo de herramientas y lenguajes abiertos y estándares. Python, Ruby, Php, Perl, C++, Lisp, C, Fortran, HTML5, etc. Son todos estándares y lenguajes abiertos. Ya sea que crees una aplicación de escritorio o web, generalmente tienen toneladas de herramientas para programar. En contraparte, en ocasiones es difícil encontrar trabajo de este tipo de tecnologías a diferencia de .NET y Java. (No quiere decir que en Java o .NET no se pueda programar HTML5 o C++, simplemente que en el mundo del Open Source se apegan a los estándares y pueden usar cientos de frameworks, IDE's y herramientas.
C)-Por Objetivo o Mercado: Desde luego, pueden existir cientos de categorías, te diré las mas comunes:
1-Juegos
2-Negocios
3-Seguridad
4-Entornos Distribuidos
5-Redes Sociales y Comunidades
6-Aplicaciones Especializadas
Podemos clasificar el trabajo de programadores en varios rubros. En términos generales:
a)-Por función (En un equipo de programación grande, cual es su labor)
b)-Por tecnología / lenguaje (Por el tipo de tecnologías empleadas)
c)-Por objetivo práctico (A que tipo de programas o mercados están enfocados)
A)-Por Función:
1-Desarrolladores Front End: Que son los que realizan las interfaces gráficas de usuario; ya sea en HTML5, Jquery, QT4, .NET, ExtJS4, etc, etc... Son los programadores que se encargan de la GUI. Este tipo de programadores son famosos por darle la FORMA final a un programa. Contrario a los de Back End, ellos casi no crean clases, objetos o APIs, solo las utilizan para crear formularios, Skins, Templates, Hojas de Estilo, etc.
2-Desarrolladores Back End: Que son los que se encargan del CORE de las aplicaciones. Programan lo que hay detrás; saben de patrones de diseño, estructuras, arquitectura, clases, orientación a objetos, unit testing, etc. Ellos son los que se llevan el trabajo rudo. Sin embargo, su trabajo generalmente no se ve a pesar de formar la estructura de todo. Generalmente saben mucho de C/C++, MVC, OOP, Singletons, Factory y otras tecnologías de desarrollo.
3-Equipo de QA (Quality Assurance): Son los testers de los equipos de desarrollo. Se sientan a picarle al trabajo de los demás para encontrar errores. Si son juegos puede ser entretenido, pero generalmente QA es un trabajo aburrido. Saben mucho de control de calidad, estándares, normatividad, etc.
4-Diseñadores: Son los que crean el arte de un programa; los assets, sprites, canvas, dibujos, animaciones, Flashes, etc. etc. No hay mucho que decir.
5-Team Leaders o Project Managers: Son los directores de la orquesta. Saben mucho de proyectos, metodologías, trabajo en equipo, SCRUM, Xtreme Programming y se encargan de orquestar un calendario de desarrollo y llevarlo a la práctica. Generalmente estuvieron muchos años.
B)-Por tecnología y Lenguaje: (NOTA: Tema muy polémico, para desatar guerras)
Hay decenas y decenas de lenguajes de programación. Pero para términos prácticos, existen 3 GRANDES competidores en infraestructura de programas que llevan la batuta de las tecnologías:
1-.NET: Los fanboys de Microsoft. Saben de C# o Visual Basic y generalmente programan .NET, Silverlight y otras bazofias Microsoft. Estos programadores tienen mucha demanda, les pagan bien y generalmente hacen aplicaciones que corren en Windows o Internet Explorer. Muchos aman a .NET, otros simplemente lo odiamos (Por ser Microsoft) Estos programadores no tienen otra opción que usar su Visual Studio en un Windows.
2-JAVA: Los fanboys de JAVA, que hoy en día son poco menos que esclavos de Oracle. Ya no es el Java de Sun Microsystems que solía ser fabuloso. Las personas que programan tecnologías Java generalmente son las mejor pagadas, pero la curva de aprendizaje es muy dura. Puede ser para móviles, para Android, para servidores, aplicaciones Enterprise, etc. Usan J2EE, JSF, JDK, Struts, Hybernate y aman IDE's como Eclipse para programar. Aunque existen decenas de buenas IDE's para Java. Hay programadores Java que usan Windows, Linux, Solaris, etc. La desventaja es, que el mercado de Java cada vez es menor.
3-Open Source: Este tipo de programadores son los mas versátiles y es difícil enumerar todos los estilos. Generalmente programan en Linux, usan todo tipo de herramientas y lenguajes abiertos y estándares. Python, Ruby, Php, Perl, C++, Lisp, C, Fortran, HTML5, etc. Son todos estándares y lenguajes abiertos. Ya sea que crees una aplicación de escritorio o web, generalmente tienen toneladas de herramientas para programar. En contraparte, en ocasiones es difícil encontrar trabajo de este tipo de tecnologías a diferencia de .NET y Java. (No quiere decir que en Java o .NET no se pueda programar HTML5 o C++, simplemente que en el mundo del Open Source se apegan a los estándares y pueden usar cientos de frameworks, IDE's y herramientas.
C)-Por Objetivo o Mercado: Desde luego, pueden existir cientos de categorías, te diré las mas comunes:
1-Juegos
2-Negocios
3-Seguridad
4-Entornos Distribuidos
5-Redes Sociales y Comunidades
6-Aplicaciones Especializadas
otalvarezkeylaoj1:
gracias
Otras preguntas