it-swarm-es.com

Trabajando como el único programador en una empresa no tecnológica

Trabajo como desarrollador de back-end, desarrollador de front-end, administrador de sistemas, mesa de ayuda y 'chico que conoce las computadoras' en una pequeña empresa de marketing de unas 15 personas.

Me preguntaba si otros podrían compartir sus experiencias volando en solitario en compañías que no están necesariamente inclinadas hacia la industria de la tecnología.

Originalmente tomé el trabajo para pasar del desarrollador/diseñador front-end al codificador de tiempo completo. Ha sido una buena experiencia hasta cierto punto. Definitivamente puedo ocupar el rol de programador de 'estrella de rock', porque francamente, nadie realmente entiende mi trabajo.

Últimamente, se siente como una posición muy solitaria. Rara vez puedo sacar ideas de la gente, y todos me miran como si tuviera poderes mágicos que harán que todas las computadoras funcionen y nos lleven primero a las búsquedas de Google. También sentí una fuerte desconexión en comparación con lo que decimos que queremos (proyectos con grandes cronogramas de desarrollo de meses) versus lo que realmente hacemos (copiar y editar nuestros sitios una y otra vez).

Entonces, ¿quién más se encuentra siendo el 'chico tecnológico' en una compañía que piensa que la tecnología es un poco mágica, y cuál es su opinión sobre su situación?

37
Bryan M.

Aproveche la situación que tiene, hasta cierto punto, creo que tiene un poco de "grassisgreeneritis". Lo siento, no estoy tratando de ser gracioso. Lo que digo es que cada puesto en cada empresa tiene defectos. Los tuyos comienzan a llegar a ti más porque son muy familiares. Pero, en las empresas tecnológicas, los horarios y los compromisos de tiempo se convierten en un problema. En las grandes empresas no tecnológicas, superar la estupidez y el procedimiento político puede ser un gran problema.

Así que aprovecha lo que tienes ahora; aprende lo que puedas. Una vez que creas que realmente no puedes aprender más, probablemente sea hora de seguir adelante. No hay daño en eso; Parece que eres una de esas personas que tienen que crecer para ser felices con un trabajo. Su compañía actual debe entender que cuando llegue a ese punto y, sinceramente, si no lo hacen, irse es definitivamente lo correcto.

Habiendo dicho todo eso, hay más que puedes hacer en tu posición actual.

Si se siente solitario, haga algunos cambios para eliminar ese sentimiento.

  • Utilice comunidades en línea para intercambiar ideas de las personas (StackOverflow es excelente para esto).
  • Investigue un poco con Google para averiguar qué se necesitaría para aterrizar su empresa primero y luego prepare una propuesta para que suceda.
  • Al pasar por proyectos, tome la iniciativa y cambie cómo suceden las cosas. No te dejes llevar por proyectos poco prácticos y largos. En cambio, proponga mejoras incrementales de un mes. A lo largo de un año, esos se suman y realmente pueden ayudarlo a sentir que ha logrado algo.
27
Jeff Siver

Hay una desventaja distinta de ser el único desarrollador: no tiene a nadie de quien aprender.

En mi opinión, la mejor manera de convertirse en un mejor programador es trabajar con personas que son mejores desarrolladores. Si eres el desarrollador en solitario, tienes que esforzarte para aprender nuevas tecnologías, conceptos y características del lenguaje.

Creo que es importante para cualquier programador serio rodearse de otros programadores que puedan desafiarlo en lo que hace. Si está trabajando por su cuenta, se está perdiendo una gran parte de lo que se trata la programación.

Probablemente pueda ganar un salario decente haciendo esto y hacerse indispensable, pero a largo plazo no va a crecer tanto como pueda y creo que las desventajas superan las ventajas en este caso.

21
Jaco Pretorius

Hay ventajas y desventajas.

Enumeraste la desventaja más importante para mí: no puedes compartir con colegas. Pero estás aquí con nosotros, ¿verdad? Puedes compartir con nosotros.

Las principales ventajas son las siguientes:

  1. sted es el mejor en su campo en su empresa, y estará allí por mucho tiempo. Esto es muy importante. En las grandes empresas donde tienes docenas de desarrolladores, hay mucha competencia, y la mayoría se ve afectada por eso. Eso es estúpido, pero es la naturaleza humana.
  2. Como se trata de una empresa pequeña, es probable que sea el tipo que obtenga la aprobación para contratar nuevas personas de TI que administrará. Esto lo colocará en una buena posición donde tendrá muchas opciones.
  3. Siendo el único en administrar TI (incluso en una pequeña empresa), es una oportunidad. Se te acreditará por los éxitos.
9
user2567

He estado en esta situación la mayor parte de mi carrera. Aquí están los pros y los contras como yo lo veo:

Pros

  • Usualmente incursionas en más que solo programación; También actúa como analista de sistemas, arquitecto y desarrollador.
  • Más exposición al negocio real, ya que realmente necesita saber qué está sucediendo debido a que no tiene un analista/arquitecto para manejar el trabajo de diseño

Contras

  • Has tocado el techo de cristal en casi todos los casos de este escenario. A menos que se encuentre en una empresa poco común que planea expandir su departamento de TI/Software, nunca será promovido ya que no hay nada a lo que promocionarse, y probablemente nunca podrá contratar personas debajo de usted.
  • Probablemente con exceso de trabajo, posiblemente mal pagado
  • Es fácil sentirse frustrado por no tener a nadie con quien intercambiar ideas o hacer una lluvia de ideas, básicamente tiene que seguir su instinto o pasar mucho tiempo en sitios como este o IRC o lo que sea que esté hablando a tus compañeros.

En última instancia, diría que no es una buena elección de carrera, a menos que tenga un interés personal en el negocio, si es un negocio al que desea mudarse de TI, o si son amigos cercanos/familiares de las personas que dirigen la empresa. Aprenderá mucho sobre el no software, pero su experiencia se descuenta en gran medida porque siempre tendrá un montón en su plato. En todas las experiencias, excepto en las más raras, nunca podrá mejorar la empresa si su configuración es mala (es decir, hardware de baja calidad, código/base de datos de baja calidad), y nunca podrá contratar personas bajo su supervisión. y luego convertirse en un verdadero gerente.

Cuando trabajé en una pequeña tienda para seis personas hace dos años exactamente en este rol, mi título era "Director de TI", pero no tenía informes y era el administrador del sistema/desarrollador/DBA todo en uno. Si bien aprendí un poco sobre cómo tratar con la alta gerencia en las decisiones tecnológicas, nunca me dieron los recursos para realmente hacer nada (es decir, no tenía informes, ni presupuesto, y no estaba autorizado para tomar decisiones) , y como tal, me reiría de cualquier entrevista con un gerente real a la que iría, ya que no era un gerente real sino un "tipo de TI" con un título grandioso. El estancamiento finalmente hizo más daño que bien y terminé con un poco de problemas relacionados con la salud (úlceras) debido al estrés de tener que manejar una docena o más de cosas con un presupuesto reducido con cero apoyo o asistencia.

¿Lo volvería a hacer? Solo si supiera que la compañía estaba firmemente detrás de mí tomando las riendas como Gerente de TI, y me daría A) Los recursos que necesito para hacer mi trabajo, ya sea un presupuesto para software/hardware, la capacidad de contratar personas o los menos contratan buenos contratistas y B) El apoyo para tomar decisiones informadas para la empresa; básicamente ser tratado como un ejecutivo/gerente (porque si usted es la única persona de TI, usted es esencialmente el CTO/CIO y se espera que consulte casi a diario con la gerencia sobre la dirección tecnológica de la empresa) y no como un empleado.

Situaciones como esta casi nunca salen bien a menos que encuentre un caso raro con dueños de negocios que se preocupan por crecer y quieren para hacer crecer su departamento de TI. En un caso como ese, eres oro si quieres convertirte en gerente. En la mayoría de los casos, sin embargo, simplemente se agotará y no tendrá nada que mostrar, excepto un título inventado que ningún verdadero administrador aceptará como válido.

8
Wayne Molina

Pasé algunos años como programador en solitario en una empresa no tecnológica. Trabajé para mis habilidades tecnológicas, pero pronto encontré un uso para mis habilidades de programación (desde escribir pequeñas utilidades hasta proyectos de desarrollo de tamaño razonable).

Uno de los beneficios fue que pude leer sobre "mejores prácticas" e implementarlas dentro de la organización (por ejemplo, control de fuente, pruebas unitarias, pruebas funcionales, etc.).

También me dio una idea del ciclo de vida completo, desde la recopilación de requisitos y la especificación de casos de uso hasta el soporte posterior al lanzamiento y la administración del lanzamiento.

Siento que la experiencia me convirtió en un desarrollador más completo, y la experiencia ha sido un beneficio ahora que trabajo para una empresa de desarrollo de software.

Con respecto a sentirme solitario, estoy de acuerdo, me sentí de la misma manera. Las comunidades de Internet son útiles para rechazar ideas, y los grupos de usuarios locales también pueden resultar entretenidos. ¿No tienes un local? Comience uno: ¡es probable que haya personas locales en el mismo bote!

6
Chris Buckett

Estoy en una situación similar Las cosas son lentas en este momento, pero tenemos una nueva línea de negocios que estamos comenzando internamente y otra de una compra. Las cosas cambian muy rápido. Los proyectos van y vienen. Se siente solo, y la familia de sitios SO) ha ayudado técnica y personalmente.

En igualdad de condiciones, prefiero formar parte de un equipo, pero mi última empresa tenía un pequeño grupo de desarrolladores. Siempre trabajamos en diferentes proyectos de forma independiente. Perdimos a nuestro gerente que fue reemplazado temporalmente por el jefe de contabilidad. Su idea era dejarnos administrar nuestros niveles y tratar con todas las relaciones con los proveedores, la gestión de proyectos, las reuniones, etc. Me fui antes de que encontraran un reemplazo; Simplemente no podía soportarlo más. Como dije, todas las cosas son iguales.

Me involucro con personas de otros departamentos en proyectos. De vez en cuando me pongo a trabajar con un desarrollador de otra compañía que estamos tratando de integrar en nuestras aplicaciones.

Cuando trabajaba desde casa, tenía más flexibilidad para ir a un grupo de usuarios local (estaba a unos 45 minutos). Desde que viajo en tren a la ciudad, ha sido más difícil asistir. Desearía que hubiera algo más cerca.

4
JeffO

Mi experiencia ha sido similar a la de ChrisB. Fui efectivamente el único desarrollador de aplicaciones para mi departamento durante tres años hasta que (recientemente) trajimos un segundo desarrollador, y eso ha cambiado mucho la situación.

Lo bueno de ser solo un técnico es que puedes aprender algo nuevo e implementarlo sin convencer o entrenar a nadie más. Una vez que tenga otras personas técnicas, debe llevarlas consigo, lo que ralentiza mucho las cosas.

La gran desventaja es que hay un límite de lo que puede o aprenderá por su cuenta, por lo que debe trabajar más para mantenerse disciplinado y seguir progresando, y eventualmente alcanzará un límite. Creo que una vez que alcanzas cierto punto, no puedes avanzar más fácilmente, excepto interactuando con desarrolladores más expertos que tú mismo: los defensores de las ideas de Software Craftsmanship tienen muchas cosas interesantes que decir sobre la tutoría.

3
Stuart Ellis

He conocido personas en ese puesto. Yo diría que la pregunta crítica es cuánto te respetan. Hay empresas muy pequeñas que adoptarán la actitud de que el programador es un mal necesario (un muy buen ejemplo que conozco era una empresa familiar), y empresas muy pequeñas que considerarán al programador como el experto en informática residente. Parece que te respetan, especialmente porque no hablas de tener que hacer las tareas extrañas que las personas terminan haciendo en negocios muy pequeños.

2
David Thornley