Una de las consecuencias de ser profesor de Sistemas de Información dentro de IE Business School, una de las escuelas de negocios con más vocación emprendedora, es que periódicamente tienes la oportunidad de revisar planes de negocio con alumnos y ex-alumnos. Y el caso es que, en varias ocasiones recientemente, me he encontrado con la misma cuestión: una empresa que pretende establecerse alrededor de un desarrollo tecnológico en una plataforma determinada, pero que decide recurrir a un tercero para llevar a cabo dicho desarrollo.
Mi respuesta, en esos casos, suele ser clara: si una empresa pretende establecerse en torno al uso o la explotación de una tecnología determinada, esa tecnología forma parte de su core, de su competencia fundamental y, por tanto, debería idealmente ser un desarrollo interno. Mi recomendación suele ir por el lado de localizar programadores con experiencia demostrada y relevante, asegurarse un buen encaje con el resto del equipo y, tras las adecuadas comprobaciones acerca de su calidad, asegurarse un nivel de compromiso elevado, preferentemente con esquemas de participación en capital. Las razones son dos: en primer lugar, la ya citada internalización de una competencia fundamental. Y en segundo, la necesidad de flexibilidad, un factor que resulta enormemente estratégico, y que no debe condicionarse a la agenda, plazos y costes de un proveedor externo cuyo compromiso acaba con el pago de una factura: un desarrollo tecnológico suele sufrir cambios a medida que evoluciona, tiene necesidad de responder a sugerencias de los usuarios, a aprendizaje que proviene de la experiencia y de alteraciones derivadas del panorama competitivo, y esos cambios imprevistos desequilibran fácilmente cualquier presupuesto de desarrollo externo. En sentido contrario, suelen argumentarse factores relacionados con la velocidad: entre acudir a un proveedor externo externo experimentado y rodado, y encontrar y seleccionar los programadores adecuados, la primera opción suele aparecer como mucho más directa y sencilla, particularmente si no tienes conexión con la comunidad de programadores y no tienes claro ni siquiera por qué tipo de lenguaje optar.
En el fondo, la decisión es una de las más habitualmente discutidas en la empresa: la de «make or buy», hacer o adquirir. Pero mi impresión es que, en este tipo de entornos, se somete a dinámicas diferentes, derivadas de la particular idiosincrasia de la labor de programación. Desde mi punto de vista, una empresa que aspire a hacerse un hueco en base al uso de una tecnología, debe tener dicha tecnología bien atada en sus competencias: cuanto más «empresa de tecnología» sea, más sólida será su posición competitiva. Pero por supuesto, se trata de una apreciación personal basada en experiencias previas, y me encantaría tener la opinión de otras personas al respecto…
Mi opinión: el desarrollo siempre en Casa, subcontratar es malo en estos casos. Tuenti subcontrató al principio y luego tiró todo a la basura después de pagar un pastón.
Desde luego, son reflexiones por las que los emprendedores siempre tenemos que pasar.
Gracias por aportar tu opinión.
Bueno, en la extraña experiencia que cuento en http://www.fisica3.net/2009/08/es-este-el-mecanismo-de-remuneracion.html la decision tomada por dicho startup fue la de hacer un outsorcing.
El puesto que se me ofrecia entonces era hacerme responsable de la implantacion de la solucion desarrollada por una empresa en Almeria, y de igual manera liderar los objetivos de desarrollo que se le encargaria a dicha empresa.
La verdad es que el modelo me parecia un poco raro, pues esa flexibilidad de ir ajustando requerimientos (motivados por la necesidad de añadir funcionalidad al producto) en el camino choca bastante con los mecanismos de contratacion «llave en mano», pero esa era la idea de los fundadores, motivados creo por su reticencia a crecer en cuanto a personal, lo cual los llevaba a buscar autonomos y a mecanismos medio turbios como el que comento.
Sinceramente tengo mis dudas de que un modelo de tanto ajuste continuo pueda llevarse a distancia de una manera adecuada, tal vez con requisitos cerrados, pero asi como me lo plantearon…..
Hola,
Pues yo siento disentir.
Ya lo escribí hace tiempo: http://loscuenca.com/2009/09/las-10-razones-por-las-que-no-debes-tener-tu-propio-equipo-de-tecnologia
Tendemos a pensar que tenemos mas control sobre los recursos humanos que están en plantilla pero creo que eso es del pasado. Hoy las relaciones laborales están claramente desequilibradas del lado del trabajado, y no se porque un trabajador tiene porque estar más vinculado o motivado que una empresa.
Cuando trabajo con mis clientes, creo que ellos sienten mas preocupación por su negocio en mi que en muchos de sus empleados.
La preocupación fundamental suele ser: «¿Y si tu desapareces o si tu te vas?. Yo creo que eso es más problemático en el caso de la plantilla.
Yo creo que el esquema ideal es que uno de los fundadores tenga conocimiento de tecnología y de la red, y luego contar con un buen socio.
(¿Por cierto quien ha dicho que un buen socio fundador no puede ser una empresa?)
Creo que la primera pregunta que hay que plantearse en todo caso es si esa tecnología es esencial a tu negocio o meramente accesoria. Si en ella has de basar la principal creación de valor añadido, su desarrollo debe ser interno por todos los motivos arriba indicados. Sólo si se trata de algo accesorio tiene sentido subcontratarlo. De lo contrario sería mucho más sencillo a un potencial competidor recurrir a los servicios de tu mismo proveedor y absorber con ello tu ventaja competitiva. La mejor manera de proteger tu ventaja competitiva es generarla tú mismo.
Yo le diría a Javier que no se del IT de Tuenti desde hace tiempo, pero si te puedo asegurar que al principio no era desarrollo de fuera, sino que primero fue todo dentro, te estoy hablando del año 2006.
En mi experiencia como agente de desarrollo local recomiendo lo mismo, con algún matiz pero sí. Y más en temas TIC.
En mi opinión una empresa no puede subarrendar nada de su core, de lo contrario arriesga su razón de ser. El dominio de lo que define el valor agregado tiene que ser efectivo y palpable. Años atrás tuve la oportunidad de ver como una empresa en la que trabajaba tuvo que enfrentar de pronto la competencia de una consultora a la que le había encargado una parte vital de su software. Estaban en un dilema tan molesto como evitable. Ahora dependían de un software desarrollado por un competidor. Si los demandaban corrían el riesgo de perder un proveedor vital , si no lo hacían perdían cuota de mercado. Una muy mala jugada hecha en el espíritu de pensar que todo puede ser un commodity. Pero el know how no puede subarrendarse
La respuesta la tienes en tus mismas palabras, Enrique Dans: Si es core, desarróllalo internamente. El resto lo puedes externalizar
Yo le diría a PabloHar, que el problema no está derivado de que fuera una consultora, sino que de que no fuera una consultora «honrada».
Y además, preguntale a los de SalesForce que opinan del equipo que se fue a montar SugarCRM, o los n casos de equipos que dejan una empresa para montar algo parecido.
Se me olvidaba, que tal un vistazo a http://www.nicholasgcarr.com
Comparto tu opinión completamente. Si la tecnología en cuestión va a ser una de tus core competences clave sobre la cual pretendes sustentar tu ventaja competitiva a largo plazo entonces debes dejarlo dentro de la empresa.
A modo de ejemplo y siguiendo con el CRM, creéis que Amazon lo deja en manos de terceros? Obviamente no. Pensad en el sistema de recomendaciones en manos de un tercero. ¿Cuanto tiempo tardaría en ser implementado por sus competidores?
Si por el contrario, dicha tecnología va a dar soporte a actividades de apoyo dentro de tu cadena de valor, probablemente tenga mucho sentido sacar su desarrollo.
¿dentro o fuera? Donde me cobre más barato (y no vea que a la larga cuesta más)
Estamos en un mundo globalizado en el que por ahí, dispersos por todo el planeta, hay unos cuantos cientos de miles que le dedican muchas horas a esto.
Este es un medio en el que sin conocimientos no puedes hacer nada que no se haya hecho ya y en el que si te estás quieto demasiado tiempo te quedas fuera de juego. En el fondo se trata de encontrar ‘la fórmula’ que te permita estar cada día un poco mejor preparado para no perder la onda, participar en desarrollos punteros ayuda mucho.
Si estás durante tres meses dedicando un tiempo a comerte la cabeza sobre algo, lo que puedes hacer al final de esos tres meses es mucho mejor que lo que puedes hacer si no le has dedicado nada de tiempo.
Si participas en el peor de los casos acabas con un conocimiento, si subcontratas al final acabas igual que como has empezado, el software sin mantenimiento pierde vida muy rápido.
Llevo 20 años en el mundo de la consultoría y tengo mi opinión respecto al tema que nos ocupa y voy a intentar exponerla sin poner ningún enlace a ningún artículo de mi blog :-)
– ¿Qué es «core» del negocio?, ¿la tecnología, o el conocimiento que dicha tecnología implementa?. Yo creo que el (mayor) valor está en el conocimiento del negocio.
– ¿Es viable crear un equipo de construcción desde cero que implemente nuestra idea de negocio a la velocidad que necesitamos y al primer intento?. Yo creo que no, mi experiencia en la operación de factorías de software me dice que un equipo de construcción no es productivo antes de 6 meses y no es bueno antes de 2 años.
En los últimos años he estado involucrado en múltiples proyectos como el que manejamos. Nuevas empresas con una ¿nueva? idea que necesitan una plataforma para explotarla, o bien empresas que quieren basar la transformación de su operación en una profunda transformación/renovación tecnológica.
Todas ellas decidieron externalizar el desarrollo buscando la experiencia y garantía de un «especialista» y también, porque no decirlo, buscando poner un precio cerrado que pudieran gestionar y controlar. Y en mi opinión en este último punto está el error en el planteamiento.
El planteamiento es erróneo por que estamos intentando poner un precio fijo a un objetivo necesariamente móvil. Y ésto, más pronto que tarde, genera tensiones entre las dos fuerzas involucradas; el contratante que necesita una respuesta a sus necesidades (que evolucionan día a día) y pretende que el precio final y los plazos no se muevan y la del contratado que pretende no perder hasta la camisa en el intento y, por lo tanto, intenta no moverse ni un ápice del alcance inicial del proyecto (sobre el que se hizo la planificación y elaboró el presupuesto).
¿Qué propongo?. Contratar un equipo de construcción experto (y externo), contratarlo por ciclos de desarrollo (Sprints de Scrum, por ejemplo) y completar dicho equipo con los recursos internos que realmente conocen el negocio (los dueños del producto).
Este equipo mixto debe encerrarse en una sala y trabajar juntos para obtener resultados rápidos, funcionales, e incrementales. El contratante puede plantearse objetivos utilizando como unidad el Sprint (y por lo tanto asegurando un coste fijo) y además se asegura obtener resultados funcionales y explotables al final de cada «sprint».
Aún así no es fácil, no todas las ideas de negocio son necesariamente buenas, pero creo que es la única dinámica que no está condenada al fracaso simplemente porque el planteamiento sea divergente desde un punto de vista de beneficio obtenido para las partes involucradas.
He dicho :-)
Totalmente de acuerdo, aqui hay un articulo que lo explica muy bien:
Nadie te va a montar un proyecto por un salario
Resumen: Un proyecto web se arranca escribiendo líneas de código, no con ideas, ni estrategia, ni contactos… Un programador que es socio con una participación sustancial en el proyecto es la clave, no nos sirve un asalariado ni un freelance. Este es el punto 0 de arranque de cualquier proyecto web viable. Si no tienes socio programador, no tienes nada.
http://www.alzado.org/articulo.php?id_art=843
Es muy complicado generalizar ya que cada negocio, empresa y equipo humano es diferente…. pero despues de algunos años trabajando en consultoría de sistemas, y otro cuantos en «experiencias» startup.. coincido con Agustín y José Tomé.
A no ser que tengas un equipo extraordinariamente potente y no exista la tecnología.. no te metas en un desarrollo interno.
Hablando con claridad, lo que me me cuentan y leo últimamente es que es normal encontrarse con emprendedores que consideran la tecnología una commoditie cuando en el proyecto que quieren emprender la tecnología es core. Y la razón de considerarlo una commoditie desgraciadamente está relacionado con ausencia de conocimientos y experiencia razonable en ámbitos tecnológicos.
Me parece una mala idea no contar con un equipo interno de construcción del core de tu negocio, que te de flexibilidad para cambiar, evolucionar, responder a los impredecibles primeros pasos, primeros clientes, adaptaciones estratégicas, necesidades de monitorización, en definitiva de control de tu negocio. No es necesario que todo el equipo sea propio, puedes tener algunos externos, puedes colaborar con pequeñas consultoras especializadas, puedes construir relaciones de partenariado fuerte y exclusivo… hay muchas opciones.
Yo sólo os dejo un enlace y un extracto:
Outsourcing: A Game for Losers
http://www.strassmann.com/pubs/cw/outsource-losers.shtml
I could not find any corporation with a consistently large Economic Value-Added and rising employment which outsourced, despite all of the claims about «synergy» or «advantages of getting rid of commodity work».
One could say that outsourcing has many of the attributes of a widely prevailing disorder known as «Anorexia nervosa.» It is a psychological disturbance involving the refusal to eat to the point of starvation. People with anorexia have a distorted self-image which makes them feel «fat» even when emaciated. Preoccupation with food and low self-esteem, along with emphatic denial of the problem, characterize most anorexics. Similarly, executives in companies with poor financial performance seem to concentrate on downsizing as the preferred method for restoring competitiveness.
Acorde con mi relativamente reducida experiencia empresarial, y lo que veo de cómo se mueve el mundo en el tema de la emprendeduría tecnológica, tus reflexiones me remiten a algo en lo que ya he pensado unas cuantas veces.
Según las administraciones y los encuentros y movidas sectoriales, las cámaras, etc., su forma de ver la emprendeduría es aquella en la que una persona tiene una idea y hace las mejores subcontrataciones al mejor precio para elaborar un producto o satisfacer un servicio. No se concibe el emprendedor en términos de know-how. Se concibe solamente como un tipo con buenas ideas, bien conectado, con gomina en el pelo y dinero. Lo que sepa hacer es absolutamente lo de menos.
Es decir, los mecanismos de soporte al emprendedor están organizados de tal forma que favorecen casi exclusivamente aquellos que lo externalizan todo, incluido el core de su servicio.
Yo soy empresario autónomo y el servicio que yo tengo ganas de ofrecer es, principalmente, aquél que al que yo mismo puedo dar forma, fabricar. Al trabajar con un producto digital (creación visual, web) o en bienes inmateriales (formación) la factura de mis proveedores es próxima a cero. Ya tengo el equipo informático que necesito para desarrollar mi tarea. Con lo que mi principal inversión potencial es la de un sueldo para mi que destine a la mejora de la productividad o al desarrollo de nuevos productos y servicios.
Pero con ese punto de vista mío me encuentro en el desierto. Todo lo vinculado a las nuevas tecnologías, en cualquiera de sus facetas, va siempre asociado a grandes equipos y números, nombres de puestos inglés (IT Research Manager…), departamentos de todo lo imaginable, con lo que si te quieres vender como alguien que de forma autosuficiente ofrece servicios en este campo, pareces un don nadie.
Soy artesano de la imagen digital, especialista en software libre. Igual que un carpintero no necesitaba contratar en el pasado treinta mil personas y empresas cuyos servicios confluyeran en un único producto, la mesa, yo ofrezco servicios de creación visual en formatos digitales, y los elaboro artesanalmente.
Alguien más ha tenido la misma percepción que yo en algún momento? Qué pensáis de mi posicionamiento?
un saludo,
Una idea de negocio por si sóla no vale demasiado, aunque sea excelente.
Si se externaliza el convertir la idea en algo tangible, los riesgos de pérdida de control sobre el producto final son muy altos. Por eso el proceso de «tangibilización» de la idea no sólo debe permanecer «in-house» sino que debe vincularse fuertemente a los desarrolladores, como bien apuntas, para que se comprometan con el proyecto, al menos a medio plazo.
El outsourcing funciona bien sobre el papel, regular en la práctica cuando hablamos de «commodities» y es una verdadera pesadilla cuando se trata de operativas con una mínima complejidad o de procesos clave de negocio.
Estoy de acuerdo con #15, en parte. Lo importante es el negocio, estoy de acuerdo. Lo que suele parecer en este mundo es que la tecnología está ahí fuera, y todos la podemos aprender. Pero creo que hay Tecnología y Tecnología. Que lo tuyo van a ser JSP’s, por poner un ejemplo, pues a mí me parece subcontratable. Que lo tuyo va a ser Identity Management,m apoyándote en una herramienta de mercado customizable, como es mi caso, pues eso hay que quedárselo en casa. Un programador capaz de manejar la herramienta de IdM XXX necesita, por mi experiencia, de 6 a 9 meses para empezar a «controlarla» entera, y más de 15 para ir «suelto», dado que a la vez que aprende a manejarse con los diferentes componentes del «negocio» en cuestión, debe aprender el propio «negocio».
Un saludo
Ahora las empresas modernas son más tecnológicas que nunca. La tecnologica en casi todas las empresas es una pieza vital. Y los dos grandes errores que se suelen cometer es no darle valor a la tecnología y como parte de este error pensar que se puede sacar fuera de la organización. Se puede programar en la India un driver de una tarjeta gráfica o un procesador de textos. Pero un desarrollo relacionado directamente con el negocio es muy difícil de hacerlo. Mi experiencia en este modelo siempre ha sido un desastre.
Otro error que se comente es despreciar el trabajo de lor programadores. Un buen grupo de programadores como dices es vital para construir una buena solución. Los negocios evolucionan rapidamente y estas aplicaciones deben estar en manos de gente capaz de hacerlo ofreciendo siempre valor a los negocios.
En desacuerdo. Considero que lo más importante, inclusive en una empresa con un alto componente en TI, es el diseño, pasando por la selección de las herramientas, selección del proveedor TI y el control-seguimiento del desarrollo. Saber exactamente que es lo que se quiere y como debe funcionar, no lo sabrá un equipo de TI , más que el emprendedor o creador de la idea de negocio.
Con la evolución constante que tiene las TI, tener un equipo propio dentro de la empresa, dedicado con las necesidades de la organización y además, comprometido con su desarrollo profesional, investigando y actualizándose, es difícil de encontrar y muy costoso de mantener/retener.
La Web 2.0 precisamente podría ser un medio para deslocalizar el desarrollo técnico, si se sabe y expresa con claridad que es lo que se desea y se verifica constantemente los avances de cada proyecto. Un ejemplo podría ser el uso que se le da al portal Innocentive http://www.innocentive.com/
Saludos
A lo largo de mi carrera he trabajado en torno a 15 años en Consultoría, Empresa de Productos SW y como cliente en un departamente de TI y emprendedor, he visto innumerables casos. Coincido plenamente con Enrique Dans, si la Tecnología forma parte de tu core, tienes que tener gente dentro que te permita flexibilidad, conocimiento, etc… es decir conceptos que forman parte de la ventaja competitiva. Esto no significa que desarrolles «todo», siempre hay paquetes de soluciones de SW que solucionan parte de tus necesidades, pero por supuesto, basándonos en estándares y teniendo APIs muy claras y bien definidas, para no ser cautivos de una Tecnología. En mi opinión, esa es la mejor aproximación.
Si por el contrario, la Tecnología no forma parte de tu core, es una «commodity» la subcontratación es una opción evidente.
Saludos
Por mi parte, y desde mi experiencia algo limitada todavía (llevo 5 años trabajando en el sector de IT, primero como proveedor y después en empresa cliente), como dices en el post, si pretendes que la tecnología sea parte de tu core, deberías poseer ese conocimiento.
Y añadir que en el caso de la programación y/o tareas relacionadas directamente con la tecnología uno de los principales valores no es el conocimiento estricto, sino el compromiso. Hay gente capaz de hacer un trabajo en 2 días que a otros llevaría 2 semanas, pero la diferencia es que quizá con el de 2 semanas puedo contar con su compromiso para que efectivamente esté terminado, o en un estado «usable» a las dos semanas, mientras que con el otro no.
Este riesgo se incrementa exponencialmente cuando las personas no están directamente comprometidas con el proyecto, sino a través de otra empresa, con sus propias prioridades internas.
Saludos.
A lo largo de mi vida he sido Jefe de Proceso de Datos de na compañía y Consultor de una empresa de servicios informáticos, es decir he estado en los dos lados de la mesa de jefe de Informática.
Creo que como siempre, las soluciones no son mi blanco ni negro, sino una mezcla de todas las soluciones posibles.
Se pueden comprar soluciones cerradas llave en mano que resuelven problemas específicos, que están probadas y tiene cierta fama en el mercado. Ni los más partidarios al desarrollo propio, aconsejaría desarrollar un paquete ofimáticoa a la medida existiendo soluciones como Office en el morcado un precio reducidos y de alta calidad mi desarrollar y tu propia plataforma de programación..
Hay soluciones verticales en el mercado que solucionan problemas puntuales perfectamente a muchas empresas en lo que es periférico a su negocio, como contabilidades, nóminas, control de almacenes, compras etc. Sería absurdo hacer desarrollos a medida de cosas probadas que existen en el mercado que cubren perfectamente sus necesidades con solo hacer interfases adecuadas desde la informática de la compañía hacia/desde esas soluciones.
Por último queda lo que yo creo que es motivo de este post, que son los desarrollos que tienen que ser específicos de la empresa porque son precisamente los que cubren AQUELLO QUE DIFERENCIA LA EMPRESA DE LAS DE LA COMPETENCIA, y que por hacerla empresa «diferente» tiene unas necesidades de funcionamiento específicas.
En estas cosas, que son las menos, cabe hacer un desarrollo con un equipo interno, uno externo o un sistema mixto.
El OUTSOURCING de este «core» lo considero suicida, pues estas poniendo el «alma» de la empresa en manos de alguien que solo busca explotarte, por lo que a la larga o te chantajea o te vende a la competencia.
El hacerlo TODO EM CASA, creo que también es malo, pues la endogamia hace que que caigas en el error de no avanzar tecnológicamente. La gente de casa sabe lo que sabe y tiende a buscar soluciones con lo que entiende, plataforma de desarrollo tecnológico, lenguaje, soluciones tecnológicas conocidas etc etc. lo cual en un mundo que cambia constantemente, es suicida a medio plazo.
Por ello yo propugno un sistema mixto, con gente de la casa que hace el Análisis Funcional, puesto que ellos son los que mejor conocen los problemas de la empresa, y que además se hagan cargo del mantenimiento desde las aplicaciones en explotación, así como desarrollos complementarios y de mejora de lo que ya está en funcionamiento. Ello les permite un perfecto conocimiento de lo que tiene y una clara visión de las áreas que hay que mejorar, sustituir y desarrollar en el futuro. Esto lo hace mejor el personal fijo pues son los que mejor conocen la aplicaron de la empresa, su funcionamiento y cuales son sus puntos débiles, en función de lo que la empresa hace físicamente. El personal fijo y de confianza debe ser quien se encargue de mantener en funcionamiento la empresa y la gente de fuera los que hagan los desarrollos definidos por los análisis funcionales de la casa, buscando gente preparada que incorpore las pemúltimas tecnologías de exito, (las ultimas tecnologías no las aconsejo, salvo que quieras ir por el mundo de conejo de indias), te presente soluciones diferentes, a tus problemas de las que tu hubieras buscado, y te haga los desarrollos poniendo a tu disposición el equipo humano que «en ese momento necesites», sin que la compañía tenga necesidad de prescidir de nadie de plantilla, pasada la carga punta de trabajo, que es un efecto demoledor para los elementos de plantilla de la compañía. Obviamente debe exigirse (y pagarse) la entrega de fuentes para su posible modificación /actualizacion posterior, tanto por el personal fijo de la compañía como por una empresa externa , ellos u otros, mo conviene casarse con una empresa de servicios.
El empleado de informática fijo ha de tener a cambio de no ascender meteóricamente, las sensación de que no se encuentra obsoleto en sus conocimientos, (por la entrada periódica de nuevos desarrollos en modernas tecnologías) y que tiene estabilidad en el trabajo, para que sea fiel a la compañía, algo fundamental pues hoy cualquier compañía esta a merced de sus empleados de informática, tanto en su funcionamiento, como en su seguridad, como en su confidencialidad.
Salvo para una empresa de IT en el que es el core, para las demás las TI son herramientas para el negocio. Un gran problema que me he encontrado a lo largo de mi vida profesional es que los proyectos de IT se gestionan como varitas mágicas que resolverán los problemas de gestión, de eficacia en la producción o simplemente de personal.
Toda empresa debe contar con un asesor de IT (interno o externo) que les aclare que no hacer con las TI. La subcontratación de los desarrollos es una decisión final en un proceso muy largo que comienza siempre dentro de la empresa. ¿Qué problema tenemos? ¿Cómo pueden las TI ayudarnos a resolverlo? ¿Qué solución es más adecuada a nuestra realidad demográfica y financiera?
La definción correcta de necesidades y la estrategia de implantación es siempre algo que debe hacerse internamente, mientras que la ejecución operativa del proyecto dentro o fuera de la empresa ha de evaluarse sobre cada escenario concreto, considerando las porciones a subcontratar, los costes asociados, así como los costes de gestión de los subcontratistas.
«… entre acudir a un proveedor externo externo experimentado y rodado …»
¿Significa eso que es muy-muy externo (casi extra-planetario) o que sobra un «externo»? ;-)
Supongo que depende de cada caso (a veces externalizar es peligroso porque te pueden robar una idea).
Si estás seguro de que puedes hacerlo bien en casa y sin complicarte mucho la vida y con la total certeza de que el barco llegará a buen puerto adelante.
Pero ante la duda mejor abstenerse y externalizar porqué está lleno de buenos proyectos inconclusos en los que se ha perdido mucho tiempo y dinero y que debido a los problemas que han ido surgiendo en el camino han terminado por ser abandonados.
Totalmente de acuerdo. Llevo 10 años en una empresa dedicada a formación online utilizando una plataforma de formación cuyo desarrollo se hace in house.
La opción de desarrollar una plataforma propia o adoptar una del mercado obedece principalmente a la capacidad de las soluciones estándar de adaptarse al negocio, a los procesos internos y a la metodología pedagógica.
Las ventajas de desarrollar nuestra propia plataforma adaptada a las cambiantes condiciones del negocio y los diferentes formatos de impartición son innumerables. Entre otras cuestiones permite realizar personalizaciones y adaptaciones en implantaciones en clientes incorporando nuevas herramientas y funcionalidades complementarias para una óptima gestión del proyecto de formación.
En ciertas ocasiones también existe la tentación de partir de un software base (libre o en formato licencia) y realizar personalizaciones lo que considero también un error ya qu erequiere grandes esfuerzos a la hora de la customización y el mantenimiento. En el caso de cambio en las versión base por parte del fabricante no se asegura compatibilidad con los desarrollos realizados.
En épocas de punta de trabajo estoy de acuerdo con lo que comenta Gorki más arriba en subcontratar personal a empresas especializadas en desarrollo que deberán poner el personal a disposición de la empresa en sus oficinas, realizando la empresa que encarga el trabajo el análisis funcional de la funcionalidad a desarrollar.
Vale, bonitas teorías. Veo pocos, muy pocos, emprendedores comentado y mucho consultor y «jefe-de-noseque» dando sus siempre respetables opiniones pero a este debate le falta chicha, le falta la realidad.
Es decir: platear este tipo de decisiones desde un punto de vista teórico es inútil. En traddia acabamos de pasar por esa fase de «dentro o fuera» y me temo que, en España, esta disyuntiva es falsa: hay una carencia tal de perfiles «de calidad» en desarrollo que imposibilita tomar esa decisión en condiciones normales => Tras semanas buscando gente con un perfil adecuado solo habíamos recibido 15 currícululms (y os aseguro que la oferta la movimos bien), de los cuales eran interesantes apenas 3. Afortunadamente hemos encontrado entre esos pocos CV’s la persona adecuada pero, por nuestros contactos con otros muchos emprendedores «no desarrolladores», la carencia de ingenieros de calidad y dispuestos a emprender es prácticamente nula.
Así, en condiciones reales, esta discusión es muy divertida, pero puramente filosófica. Enrique, este problema ¿como lo resuelven tus amigos/alumnos/contactos?
Cuando lle
Totalmente de acuerdo con el artículo y la mayoría de comentarios. La diferencia estriba en si la tecnología es o no es central a las competencias de la compañía. Si la ventaja competitiva está amarrada a la tecnología, no sólo necesitas apalancarla dentro sino que también ha de tener participación accionarial en la empresa. Es siempre la opción más cara y costosa, pero la otra es el camino corto.
Por esta misma regla de negocio no recomiendo desarrollar dentro las soluciones que no son centrales a la compañía, habiendo cantidad de soluciones ya desarrolladas.
#32 Daniel, pero si en el mercado no abundan los perfiles de calidad, ¿no será mejor hacer el esfuerzo y buscarlos aunque cueste tiempo que subcontratar a un Accenture de turno que -no nos engañemos- te va a poner un equipo de 20 tíos parte de los cuales tú habrías descartado nada más ver su CV y te va a cobrar como si fueran los cracks que estabas buscando?
Como te comentaba en GBuzz, si la empresa se dedica al desarrollo de software, es mucho más cómodo que el equipo de desarrollo pertenezca a la organización. Uno de los principales problemas que se argumentan para no externalizar es que el conocimiento acumulado en el proyecto se pierde. Pero si se dispone de procedimientos bien definidos, no tiene por qué ser un verdadero problema.
Desde mi punto de vista, el mayor problema de depender de externos es una menor versatilidad para dar respuesta a proyectos que surgen de un día para otro. Un equipo de trabajo proporciona una mayor flexibilidad a la organización.
Por ello, si se trata de una empresa que se va a dedicar al desarrollo, debería contar en plantilla con un fijo de profesionales.
Saludos.
#33 Coincido contigo en que encontrar profesionales de calidad ha resultado complicado durante un periodo (estuvimos buscando desarrolladores durante 5 años sin encontrar nada aceptable), y no se si ese periodo sigue, pero al final, encontramos el perfil en España (4 desarrolladores que se acomodan perfectamente al perfil)… si bien es cierto que fueron inumerables las entrevistas (me consta que miramos más de 1000 CV, de los cuales, más de la mitad los descartamos con sólo leer el currículum, y la mitad de los restantes ni se presentaban a las entrevistas). Se trata de encontrar el nicho donde esten los desarrolladores (ahora no los necesito, pero creo que se donde encontrar más que se ajusten a mis necesidades).
En esos 5 años de desesperación, tratamos de suplir con outsourcing algunos proyectos: La calidad brilla por su ausencia (dentro y fuera de España). Para llegar a tiempo, meten tijeras sobre las especificaciones que se les mandan, y lo esconden para que no lo veas, si no fallan directamente.
Si se va a hacer outsourcing, se debe hacer un seguimiento aún mayor que el que harías en casa (ya que los desarrolladores que estan en casa saben que si hay marrones, les toca comerselos a ellos).
#32 Daniel, pero si en el mercado no abundan los perfiles de calidad, ¿no será mejor hacer el esfuerzo y buscarlos aunque cueste tiempo que subcontratar a un Accenture de turno que -no nos engañemos- te va a poner un equipo de 20 tíos parte de los cuales tú habrías descartado nada más ver su CV y te va a cobrar como si fueran los cracks que estabas buscando?
#34 #37 Sin duda merece la pena invertir en eso, pero los recursos son finitos, especialmente el tiempo (quizás mucho más que el dinero). No me diréis que si tenéis un plan de negocio serio e inversores dispuestos vais a parar el desarrollo totalmente hasta encontrar gente de calidad en vez de arriesgarte con un desarrollo externo limitado y siendo perfectamente conocedor de sus limitaciones y del exhaustivo control necesario.
Lo que quiero decir es que cualquier posición maximalista y puramente filosófica va a chocar con la realidad, donde hay que ser más flexible y, muchas veces, comerte con patatas tus propias palabras y planteamiento con el fin de sacar adelante un negocio.
Y poniéndome maximalista: Huiré siempre como de la peste de las grandes «consultoras» (accenture, Indra, Iecisa…) porque aún no he visto un proyecto suyo de tamaño medio que no crea que cualquier otra empresa podría haber hecho mejor.
En mi opinion se tiene que buscar un equilibrio, tener suficiente gente interna para poder tener control sobre las aplicaciones, integrar modulos y poder emprender modulos de desarrollo core y donde no queremos que el conocimiento este en proveedores externos, pero suficiente poca gente que permita la flexibilidad de contratar desarrollos modulares estandar, donde se aproveche la experiencia del tercero, sin por ello poner en peligro el core del negocio.
Lo dificil es llegar al equilibrio interno-externo optimo.
El control del desarrollo nos da profunidad… imprescindible para nuestro negocio a largo plazo.
La subcontratación nos da efectividad a corto. Nos permite ponernos en marcha rápidamente, sin grandes inversiones iniciales que conlleven (pesados) compromisos.
Efectivamente, un gran paso hacia el éxito estará en modular el punto de equilibrio a medida que avanza el proyecto (y el tiempo). Pero lo que nunca merece la pena es incorporar a una persona al equipo que no aporte un mínimo de compromiso. Esto es absolutamente crucial
Voy a intentar ser muy breve:
Una empresa es una cebolla, tiene capas, al principio pocas y si todo va bien … muchas. En el centro está el negocio, y justo encima, los medios productivos, lo que hace que aquello que se va a cobrar al cliente. Si para producir es necesario software, mas vale que lo hagas tu mismo, como lo compres la has cagao. Ese software está tan relacionado con el negocio que en ocasiones es indistinguible el uno del otro. Y en el futuro te pasarán dos cosas:
1.- No podrás controlar los costes. No serás competitivo.
2.- No podrás mejorar, ni cambiar, ni evolucionar los procesos y servicios. No serás productivo ni competitivo.
Los dos puntos anteriores llevan a un único sitio, al concurso de acreedores, si es que te queda algo.
¿Factoría de software, leo por aquí? Aún hay quien piensa que el software es como un producto, que se «fabrica».
Hola,
Muy bueno, Enrique. Ojála que los gestores de las empresas piensen como tú. Infelizmente, no es así!!!. De mi experiencia, creo que todo depende de la estrategia del negócio y de la cultura de la empresa. También, queria comentar que por vezes los programadores se cierran en su mundo y no son capazes de ter una visión amplia del negócio/mercado y crian ciertas barreras, solo porque son «Geek».
Al todo, considero que hoy en dia el valor estrategico recae entre otras cosas, en las personas, su potencial, experiência, etc. Es ahi, donde las más valias son elementos diferenciadores y competitivos para la empresa perante a los clientes y al mercado.
Nunca se preguntaron, cuál es el valor que tiene encomendar el desarrollo en una empresa externa, cuando al final, también trabaja para empresas concorrentes tuyas? Es verdad que existe, acuerdo de confidencialidad….Pero, en la realidad eso funciona? Actualmente, es facil buscar cosas de Internet, utilizarlas en nuestros proyectos de una ó otra forma, entonces no será facil tambien, para las empresas que contratamos?
Con esto, no quiero dicer que exista una formúla mágica, pero lo que es importante dicer es que antes de procurar soluciones inovadores en el mercado, por que no? Ser realmente inovadores con nuestra empresa, con nosotros y con nuestra familia…Hablan de Google, Apple, etc? Pero al final, es solo porque dá en las vistas, aparecemos en las fotografias y cae bién. y al final, por que nó, ser los proximos Google’s Apple’s…Pero para eso, es necesario que existe un acuerdo de Caballeros entre todos para que las cosas resultán realmente!
mi opinión basada en experiencias reales en nuestra empresa con éxito demostrable a nivel de premios obtenidos y de evolución de la empresa es que un empresario/emprendedor entiende el negocio que maneja entre las manos (conoce a los clientes, los proveedores, flujos de ventas,…los conceptos básicos de una empresa), por tanto debe ser «mas fácil» que innove en su propia empresa con desarrollos internos puesto que la tecnología tiene que estar al servicio del negocio, no al revés…
Por tanto, desarrollo interno… forever!!!
Enhorabuena por esta interesante y bonita reflexión.
Vamos a suponer que hablamos de una startup en internet:
Idea … modelo de negocio … Diseño y usabilidad … financiación … desarrollo … posicionamiento … plan de marketing … Difusión y conexiones con la comunidad … Reputación on line … Procedimientos … Gestión del webmaster … Gestión de tesorería … Relaciones en el equipo (RRHH) …
Bueno, lo que vengo a decir es que son tantos y tantos los motivos de competencia fundamental que me quedan dudas sobre si el desarrollo tiene prioridad en ese core. Pienso que una sociedad externa, experta en desarrollo evoluciona mucho más rápido y se adapta mejor a las novedades. Un gran equipo de desarrolladores en la empresa creo que perdería agilidad en adaptación, lo he sufrido en mis propias carnes. De todas formas, creo que es indiscutible el el core un buen gestor tecnológico.
Muy interesante el planteamiento y también todos los comentarios.
Tres argumentos adicionales a favor de lo que se dice en el artículo:
– El proceso de toma de decisiones cuando el desarrollo tecnológico está («demasiado») externalizado se desvirtúa seriamente. Decisiones «tecnológicas» pueden tener un efecto enorme sobre el negocio, en términos de calidad del producto o servicio ofrecido, en términos de coste, de flexibilidad, etc. Hay que pensar en como asegurar que todas las opciones se ponen encima de la mesa, y que no hay factores espurios o insuficiente información a la hora de tomar esas decisiones.
– Un buen indicador de «a dónde lleva» el desarrollo internalizado o externalizado es ver dónde están los mejores «tecnólogos» y quién desarrolla las mejores tecnologías. En mi experiencia, no están en empresas de servicios, sino en la plantilla de empresas tecnológicas. Que Amazon, Google o Facebook manejen su tecnología internamente no es, como algunos parecen pensar, por razón de su tamaño: ya lo hacían cuando eran pequeñas. El contacto con el día a día del negocio, la responsabilidad directa sobre las operaciones o los productos, el «accountability», es lo que separa a los medio buenos de los buenos de verdad. Cuantas menos capas haya entre «el metal» (la tecnología) y «el vil metal» (la cuenta de resultados, los inversores), mucho mejor.
#38 Daniel, lástima que las grandes compañías no piensen como tú porque a día de hoy gran parte de ellas (administraciones públicas incluídas, lo cual clama al cielo) usan los servicios de todas esas que has nombrado y alguna más.