Desarrollador en solitario versus desarrollador de equipo: ¿debo seguir adelante? [cerrado]

53

Trabajo como desarrollador en solitario en una pequeña empresa. Hay trabajo más que suficiente, pero lo mismo no se aplica al dinero. Por lo tanto, no veré nuevos colegas en el futuro cercano.

Soy responsable de absolutamente todo lo que tenga que ver con las operaciones de TI. Esto implica el desarrollo y mantenimiento de software utilizado internamente, el desarrollo y mantenimiento de varios sitios web que utilizan nuestros clientes, la infraestructura del sitio web, la infraestructura de red local, incluido el mantenimiento de varios servidores y el soporte interno para mencionar las cosas más inmediatas.

Realmente disfruto el 95% de lo que hago, y tengo un alto grado de flexibilidad en mi trabajo. Puedo decidir qué hacer cuando, y nadie realmente me dice qué hacer, excepto que de vez en cuando me siento con mis colegas para crear una hoja de ruta para lo que necesito hacer. Considero que tengo una alta ética de trabajo y estar por encima del promedio enfocado en lo que hago, así que las cosas se hacen.

Sin embargo, he llegado al punto en el que realmente extraño tener otras personas a mi alrededor que trabajan con el mismo. Aunque necesito familiarizarme con una amplia gama de tecnologías, ya que soy un desarrollador en solitario, tengo la sensación de que me estoy perdiendo uno del "intercambio de conocimientos" en el que participan otras personas "afines" que trabajan en empresas más grandes. in. Realmente no tengo a nadie con quien discutir los obstáculos de programación y las decisiones de diseño, y estoy empezando a extrañar eso. Además, me preocupa lo que los futuros empleadores puedan pensar de este "ermitaño" que ha estado trabajando por su cuenta durante demasiado tiempo para poder formar parte de un equipo.

Sin embargo, por otro lado, estoy pensando que no obtendré mi grado actual de flexibilidad en una empresa más grande. Veré plazos mucho más estrictos, horas tarde y áreas especializadas de trabajo. También; No estoy seguro de si esta idea de "intercambio de conocimientos" alguna vez tendrá lugar?

Alguien mas ha estado en esta situación? ¿Es una buena idea vista desde una perspectiva profesional y una perspectiva de desarrollo personal? ¿Debería considerar mudarme a un lugar más grande para (quizás) formar parte de un grupo más grande de desarrolladores y personas con ideas afines? En otras palabras, ¿será la hierba más verde del otro lado?

sbrattla
fuente
23
shhhhhhhh .... hay miles de desarrolladores atrapados en trabajos corporativos sin salida que le enviarán a su jefe su currículum.
Reactgular
2
Solo me gustaría agregar que no hay nada que le enseñe a resolver problemas como ser totalmente responsable de un aspecto de una compañía de software. Tener que conseguir cosas que no se consideran muy viables para trabajar.
Benjamin Gruenbaum
37
Mi experiencia al pasar de un desarrollador en solitario a trabajar en un equipo es que puede ser sorprendente cuántos desarrolladores no tienen idea de ninguno de los principios de los que podría haber tenido la impresión de que todos los desarrolladores se esfuerzan (como SOLID). Y de aquellos que han oído hablar de ellos, solo una fracción relativamente pequeña se preocupa. Esté preparado para enfrentar esto y decida de antemano qué hará si le preocupa.
Amy Blankenship
55
@Amy tiene razón en el dinero. Esta es mi situación y he tenido que adaptarme al código de spaghetti y a la falta de principios. Aparte de eso, estoy disfrutando de la conversación diaria con otros desarrolladores ... hace que valga la pena el cambio.
Simon Whitehead
1
OMI: si puede hacer todo en su trabajo actual por su cuenta, entonces no está haciendo nada lo suficientemente complejo como para que su carrera avance. Si eso es una preocupación, entonces necesita encontrar un trabajo utilizando su conjunto de habilidades en un equipo. Incluso los electrones libres no pueden construir el tipo de proyectos que continuarán empujándote hacia adelante. Si está satisfecho con lo que hace (¿95%?), Y puede garantizar que podrá hacerlo hasta la jubilación, por todos los medios, quédese. Si no, entonces en la marca de 3 a 5 años probablemente necesite avanzar.
Joel Etherton

Respuestas:

53

Si disfruta de su trabajo y solo le falta compartir conocimientos, considere unirse a un proyecto de código abierto en lugar de cambiar el trabajo. A menos que ya conozca a las personas con las que trabajará, no tiene idea de si el césped será más verde al otro lado.

Nemanja Trifunovic
fuente
10
Otras opciones incluyen listas de correo, pasar el rato en el chat SO, grupos de desarrolladores locales (si es que aún existen), etc. Pero la idea central es la misma: encontrar una vía extracurricular para compartir conocimientos
Bobson
3
Eso es todo mejor que nada, pero la red nunca reemplazará a las personas reales. Su teclado y monitor nunca lo amarán.
Balog Pal
Esta es una gran sugerencia, como desarrollador que trabaja en una posición en la que obtengo mucha autonomía sobre las tecnologías que uso, encuentro que participar en discusiones grupales como el chat en SO, proyectos FOSS y sitios es muy productivo.
Benjamin Gruenbaum
@Nemanja: ¡buena sugerencia (aunque como Balog menciona; nunca reemplazará a personas reales)!
sbrattla
@BalogPal: por eso sugerí grupos de desarrolladores locales ... pero estoy seguro de que son mucho más raros de lo que solían ser.
Bobson
10

Esto se alinea con mi dicho: "La programación es como el sexo. Puedes hacerlo solo, pero es mucho menos divertido de esa manera. Y te vuelve loco si lo haces de esa manera durante demasiado tiempo".

Sí, es conveniente ser su propio jefe y maestro de departamento solitario. También da miedo abandonar el caparazón establecido. Sin mencionar enfrentar el mundo hostil afuera. Y comienza desde abajo de nuevo. La separación es aún más difícil si no te expulsan y / o te sientes mal por abandonar la compañía que te necesita y tal vez te encerraron.

He estado allí. Trabajó unos 12 años en una empresa como un ejército de 1 hombre. En los últimos años, era como si muchos llamaran al Kanaan, trabajaban principalmente sentados en casa, solo obtenían una nota "El cliente X quiere algo, compruébalo", luego, unos días más tarde, se envía por correo ese contrato que se puede firmar por la cantidad X y la fecha límite Y, luego un mes Más tarde envió otro correo que se puede enviar la factura. Y trabajó tal vez 1 hora / día como promedio, por el dinero a tiempo completo. Y todos estaban contentos con el jefe y los clientes del mismo modo.

pero creció en mí y, a pesar de tener todo el tiempo, en su mayoría solo se desperdició.

Eventualmente publiqué un ultimátum para reorganizar el trabajo para poder trabajar en equipo, o estoy fuera. El jefe probablemente pensó que era un farol. En pocas palabras, me fui para siempre. El pensamiento tendrá trabajo al día siguiente. Si seguro. ;-)

Se enfrentó a una serie de entrevistas y empresas uber-WTF, pero después de unos meses consiguió un trabajo. En una compañía que resultó ser un gran tonto, pero los equipos locales realmente se sacudieron. Al menos cuando me uní, un año después de que comenzó esa partida masiva, obviamente con la mejor gente. Obtuve el mismo dinero pero más de 8 horas de trabajo en la oficina + conmoción. En un proyecto que tenía muchos problemas serios. Y los jefes remotos vigilaban todos los errores.

pero en general, me sentí vivo nuevamente y feliz de hacer un trabajo relevante. en un equipo que luchó por lo mismo, y estaba feliz de que finalmente comenzáramos a progresar contra todo el viento y el clima hostil. En mi cuenta, el cambio valió la pena. Lo único de lo que me arrepiento es que no me fui hace 4 o 5 años.

El seguimiento no es realmente relevante (de hecho, me fui eventualmente, esta vez solo 1 año después de lo óptimo, hice un proyecto en casa, luego me uní a otra compañía que era prometedora, mientras que nuestro equipo hizo un progreso increíble, la compañía giró hacia el sur, y esta vez yo finalmente se fue exactamente en el cenit, y después de unas vacaciones de verano calculadas en donde trabajo ahora sin planes de irme.) el punto es que la vida funciona, nunca de la manera que espera, pero para mejor a largo plazo.

La conclusión es que, si ya no ves el Sol, es mejor que cierres las falsas esperanzas. Simplemente no mejorará. Puede forzar su camino o buscar un terreno realmente fértil.

Balog Pal
fuente
1
¡Gracias por tu comentario! Espero que haya tenido un gran jardín para pasar las 6.5 horas restantes después de [...] "tal vez 1 hora / día como promedio [...]" de trabajo diario :-). De todas formas; gracias por compartir tu propia experiencia; Me veo en lo que usted describe desde el principio.
sbrattla
7

El hecho de que se mude a una situación con más de un desarrollador no significa que estará encerrado en plazos estrictos, horas finales y áreas de trabajo especializadas. Sí, hay corporaciones que hacen eso, pero también hay pequeñas y medianas empresas que también necesitan desarrolladores, y algunas de ellas son muy similares a su entorno de trabajo actual, solo que con más de un desarrollador.

Supongo que depende de dónde estén tus objetivos profesionales. Si está satisfecho con su situación actual, pero desea una mayor interacción del desarrollador, le sugiero que busque una pequeña empresa que tenga un equipo de 5-10 desarrolladores a los que pueda unirse. Esto le permitirá tener mucha flexibilidad, pero aún tendrá otros para hacer ping a las ideas.

Desde la perspectiva de la contratación, cuando revisé los posibles desarrolladores, nunca pregunté si eran ermitaños. Sin embargo, los ejemplos de trabajo dentro de un equipo son increíblemente importantes cuando se junta a alguien para formar parte de un equipo. ¿Cómo trata una persona con otras personas con opiniones diferentes? ¿Qué han hecho en el pasado para garantizar que todo el grupo obtenga el mejor resultado? Estos no tienen que ver con otros desarrolladores, se trata de trabajar con personas (lo que dijiste que ya haces).

Si está buscando asumir un rol de liderazgo técnico superior, definitivamente necesitará pasar a un puesto con otros desarrolladores donde tenga la oportunidad de convertirse en un líder de equipo. Es muy difícil explicar que tiene la experiencia para dirigir un equipo de desarrollo si no tiene experiencia trabajando en un equipo de desarrollo.

Jay S
fuente
Mirándolo desde una perspectiva a largo plazo, probablemente tenga sentido cambiar más hacia posiciones más "abstractas" con la edad. Cuando cumpla 60 años (en 30 años) probablemente no tendré la oportunidad de competir con los desarrolladores recién formados ... por lo que podría tener sentido en algún momento cambiar hacia algo como un rol de liderazgo técnico. Y; ahí sería donde entra la experiencia del equipo ...
sbrattla
6

Estoy en una situación muy similar a lo que has descrito. Mi principal problema es el dinero, ya que lo has mencionado. A veces pienso que estoy demasiado solo y anhelo más acción e intercambio de conocimientos, sin embargo, mirando hacia atrás en mis compañías anteriores, sé que probablemente este no sea el caso (código incorrecto, enfrentamientos de ego, burocracia sin sentido, etc.) mientras que ahora Dedico mi tiempo a aprender las tecnologías que quiero aprender, leer libros y usar las herramientas de mi elección. A veces es aburrido, otros atemorizantes, a veces carecen de motivación, pero en general es bastante satisfactorio a medida que resuelves desafíos como desarrollador full stack.

Para mantenerme actualizado y obtener nuevas ideas, generalmente navego por este sitio web, los programadores SE. Otra cosa que he hecho en el pasado son pequeños conciertos en odesk: puedes trabajar para otros programadores en sus proyectos y beneficiarte al aprender sus técnicas. Sin embargo, no lo haga por el dinero, a menos que viva en un país con salarios muy bajos.

Un último consejo: si no tienes varios años de experiencia, volvería a un equipo de desarrolladores. Todas las diferentes técnicas y conocimientos que he adquirido a lo largo de los años no creo que hubiera podido hacerlo solo, incluso con google y SO. Una parte de esto es simplemente insustituible. En ese momento, diría, puedes aprovechar al máximo el desarrollo en solitario y divertirte.

DPM
fuente
El dinero no es realmente una gran parte de mi preocupación. Se trata más de aprender y desarrollar habilidades personales. Nunca he trabajado en un equipo, solo como desarrollador solitario, así que entiendo tu punto de entrar en un equipo.
sbrattla
3

Como extensión de la idea "Únete a un proyecto OpenSource" de @NemanjaTrifunovic, puedo sugerirte ir a conferencias o hacer entrenamientos profesionales.

Salir de la rutina diaria al ver cómo otros solucionan los problemas que tuvo / tiene, o ver cómo las nuevas tecnologías pueden ayudarlo a cambiar su punto de vista, o aprender una nueva tecnología que no tiene nada que ver con su trabajo actual puede ser una gran motivación. aumentar.

¿Por qué no presentar sus soluciones en una conferencia usted mismo?

Su jefe, si es inteligente, estará encantado de pagarle todos los costos (viajes / entrenamientos), porque (debería) saber que cosas como esas motivan mucho.

Y además de eso, puede construir una red que en el futuro lo ayudará a encontrar un trabajo.

Patrick B.
fuente
3

Creo que debería convencer a su empresa a buscar al menos un otro desarrollador. Tal vez un junior que entrenaría en el sitio para familiarizarse con el sistema. De esa manera, tendrías una secuencia de conversación continua y decidida.

Dirija su empresa al Factor Bus para convencerlos. Solo tener un desarrollador responsable de todo es un riesgo muy alto. Nadie debe guardar todos sus huevos en una sola canasta.

herzmeister
fuente
3

No hay garantías en la vida, por lo que podría mudarse a una empresa más grande y cambiar un conjunto de problemas por un conjunto diferente y posiblemente más grande. Muchos han recomendado unirse a grupos tecnológicos locales para ocuparse de interactuar con personas de ideas afines, pero no podrán tomar muchas de las pequeñas decisiones que está tomando por su cuenta.

Mi sugerencia sería mantener su trabajo actual, pero involucrarse y establecer contactos dentro de la comunidad tecnológica local. Esté atento a las personas y posiblemente a las empresas con las que le gustaría trabajar. Toda gran empresa no ofrece lo que está buscando. Si surge una mejor oportunidad (y debe tener conocimiento de primera mano de que es mejor), investigue.

La mayoría de nosotros no hemos encontrado el trabajo perfecto que ofrece el tipo de trabajo que finalmente queremos. No obtienes experiencia trabajando con un equipo, pero eso no es por elección. Usted tomó un trabajo que tiene otras cosas que prefiere. No creo que sea demasiado difícil transmitir este punto en una entrevista personal.

JeffO
fuente