¿Qué factores van detrás de elegir una pila tecnológica para su inicio?

Elegir una pila de tecnología que funcione mejor para su proyecto de inicio puede parecer un verdadero desafío, especialmente si usted es un fundador no técnico. La salida más fácil sería confiar en sus preferencias personales o experiencia previa. Pero esto solo puede funcionar si tiene una sólida formación en desarrollo web, sin mencionar que las preferencias personales son subjetivas y pueden conducir a decisiones equivocadas.

Yo diría que estos son los principales factores a considerar:

  • Tipo de proyecto

El tipo a menudo determina una pila tecnológica. Para las startups, una de las opciones más populares y obvias es Ruby. ¿Por qué? Porque es súper rápido y funciona como magia si quieres construir un MVP rápido. Sin embargo, últimamente Node.JS ha entrado en juego, y parece que podría hacerse cargo antes de lo que pensábamos. Ambos pueden llevarlo al desarrollo en un 30% más rápido que cualquier otra persona. El rápido desarrollo se logra gracias a la naturaleza expresiva y concisa del lenguaje y su sintaxis flexible, así como a docenas de bibliotecas de código abierto.

Con bibliotecas como Pandas, SciPy y NumPy, Python funciona perfectamente para proyectos relacionados con Big Data, Machine Learning. Es un lenguaje universal cuando necesita calcular grandes volúmenes de datos. Python es capaz de hacerlo de manera rápida y suficiente.

Java es un lenguaje de programación de uso general que es una solución universal para grandes proyectos en curso. Puede hacer prácticamente cualquier cosa con una cantidad decente de eficiencia. Java ofrece una gran cantidad de herramientas, bibliotecas, lo que facilita a los desarrolladores diseñar e implementar cualquier característica que deseen. También es una opción del 90% de las compañías Fortune 500.

Pero cuando se trata de elegir una pila tecnológica basada en el tipo de proyecto, es principalmente una cuestión de cuán grande es. Si el proyecto es grande, necesita recursos humanos más competentes y una comunidad que lo respalde.

  • Pool de talentos

Decidir sobre un nicho o una nueva tecnología puede hacer que un proceso de reclutamiento sea una pesadilla. Antes de tomar una decisión final, debe considerar si puede encontrar otro desarrollador familiarizado con esta pila de tecnología. Si las habilidades son fácilmente transferibles y no habrá problemas para capacitar a un desarrollador junior en la tecnología deseada.

Lo que no debe tenerse en cuenta al buscar recursos es el costo. Es una idea errónea popular que al elegir entre pilas de tecnología, el costo de un desarrollador es perjudicial. En realidad, tiene tantas posibilidades de encontrar un desarrollador caro de Ruby como puede encontrar uno barato.

  • Ecosistema de pila de tecnología

El ecosistema es una comunidad y herramientas en torno a una tecnología. Al elegir una pila de tecnología que se adapte a su proyecto, es importante verificar si hay una comunidad lo suficientemente grande alrededor de la tecnología, suficiente información. Ya sea que encuentre un problema o un problema, podrá encontrar suficiente información y una solución.

Otro factor importante es la madurez de la tecnología. Cuanto antes en su ciclo de vida, menos confiable es la tecnología. Las tecnologías maduras también tienen más herramientas para facilitar la vida del desarrollador (como integraciones continuas, seguimiento de errores). Pero solo existen para el stack tecnológico donde hay un mercado de desarrolladores. Una gran cantidad de estas herramientas sugiere cuán segura es una tecnología.

Puede obtener más información sobre cómo elegir una pila tecnológica para su proyecto aquí: se explica el dilema de la pila tecnológica para propietarios de negocios no técnicos

¡Buena suerte!

Después de 4 años de ejecutar nuestra propia startup, nuestro cofundador y yo hemos explorado todo el ciclo de vida de la pila tecnológica de una startup exitosa en una publicación reciente [1]. Algunos puntos clave para responder a su pregunta:

1. Familiaridad con la tecnología.

Si bien los nuevos lenguajes y marcos pueden parecer atractivos, su criterio número uno al elegir una pila de tecnología no debería ser qué tan moderna es la tecnología. Debería ser la experiencia que tenga con él. ¿Por qué? Debido a que su objetivo no es impresionar a los desarrolladores con una base de código moderna, es construir un negocio exitoso. Y para hacer eso, necesitará usar una herramienta que comprenda y domine, sea lo que sea.

2. Documentación disponible y fortaleza de la comunidad.

Esta es la clave, especialmente si estás comenzando como un desarrollador / fundador en solitario. Desea evitar horas de investigación infructuosa cuando se atasca en un punto muerto lógico o visual. Asegúrese de que la documentación, tutoriales, foros y chats sobre su tecnología abundan. En ese sentido, las tecnologías “aburridas” que han existido por un tiempo ofrecerán una gran ventaja.

3. Escalabilidad tecnológica

Si es un proyecto de código abierto, ¿el repositorio es mantenido activamente por colaboradores confiables? Si se trata de una tecnología patentada, ¿el equipo y su hoja de ruta son sólidos? ¡No querrás terminar con tecnología obsoleta en tus manos más adelante!

Este también va de acuerdo con la familiaridad tecnológica. Elegir una pila que comprenda le permitirá tomar decisiones de arquitectura inteligente. ¡Desea asegurarse de que su base de código sea fácil de acceder para los nuevos desarrolladores que (con suerte) contratará!

4. Contratación de pros y contras

Creo que esta es la parte más difícil de manejar. Las tecnologías más tradicionales significarán un mayor número de candidatos potenciales y calificados para contratar. Sin embargo, también podrían repeler a los desarrolladores que tienen la intención de cortar sus dientes con tecnología de punta. Pero, de nuevo, elegir una tecnología menos vanguardista significará más ayuda disponible para los nuevos desarrolladores en el equipo, tanto por su conocimiento actual como por el que está en línea. Probablemente podrán enviar más rápido que con un marco marginal. Tu llamada. 🙂

¡Espero que esto ayude!

Notas al pie

[1] Para elegir, conservar y refactorizar una pila tecnológica de inicio exitoso – Snipcart

Hay una serie de factores que intervienen en su elección de pila de tecnología. Aquí hay algunas consideraciones importantes que creo que todo fundador de startups debe tener en cuenta al hacer esta elección.

Equipo de experiencia

Esto parece bastante obvio, pero he visto a muchos equipos olvidarse de esto. Si tiene dos desarrolladores experimentados de Python en su equipo, no debería importarle si alguien en una reunión le dijo que Go es el lenguaje perfecto para usar en su aplicación de redes sociales. La regla n. ° 1 es trabajar con el talento que tienes. En general, la mayoría de las pilas tecnológicas pueden funcionar bastante bien para la mayoría de los tipos de software. Obviamente, hay advertencias y excepciones a esto, pero para la mayoría de los casos, debe elegir tecnologías con las que usted y / o su equipo ya se sientan más cómodos.

Disponibilidad de talento

El grupo de talentos disponibles desde el que puede contratar también es una consideración muy importante a tener en cuenta. Digamos que su equipo se siente cómodo con Ruby y Scala. Scala es más eficiente para su caso de uso, y siente que puede construir la aplicación con la misma rapidez en cualquier idioma. Sin embargo, usted es una startup de arranque y los desarrolladores de Scala no son baratos ni fáciles de encontrar. Si va a necesitar ampliar su equipo de desarrollo en el futuro cercano, a pesar de que Ruby es una opción técnica inferior, probablemente sea la mejor opción práctica .

El tipo de software que estás creando

La pila de tecnología que elija, y las consideraciones que se tomaron para tomar esa decisión, serán muy diferentes para una nueva empresa que construye una aplicación web de mercado CRUD que para una que construye una plataforma de videoconferencia en tiempo real. Las diferentes tecnologías son más adecuadas para diferentes tipos de software.

Estrategia de negocios

¿Qué tan rápido necesitas escalar? ¿Qué tan rápido necesitas iterar? Sus opciones serán muy diferentes si espera crecer lentamente o limitarse a 20,000 usuarios de lo que serán si anticipa 1,000,000 de usuarios dentro de un mes. Asegúrese de que las realidades prácticas de las tecnologías que elija se alineen con los objetivos de su negocio.

Realización personal

Si tiene experiencia con MySQL, pero se está aburriendo realmente y se ha entusiasmado con el uso de bases de datos no relacionales y MongoDB, no hay razón para descontar este Mongo siempre que no se desalinee demasiado con el otro consideraciones anteriores. Lo mismo puede decirse del resto de su equipo de desarrollo. Si está entusiasmado con una tecnología en particular, es mucho más probable que persevere y trabaje duro en ella.

Depende,

No hay una respuesta correcta a su pregunta. Si necesita una aplicación web simple, puede usar Ruby on Rails o Python-Django para un desarrollo rápido. Si tiene un sistema de backend complejo, use Java, etc. Si va a realizar algún procesamiento en Gran cantidad de datos, use Hadoop y su ecosistema. Si tiene una gran conexión de servidor paralelo a cliente, use Eralang.

Piensa en tu caso y decide sabiamente.

More Interesting

Quiero comenzar un negocio con 2-3 lacs solo en Faridabad. ¿Cuáles son algunas sugerencias?

¿Puedo comenzar mi propia empresa de teléfonos inteligentes a los 15 años o antes? Tengo 15 años, pero sé casi todo acerca de los teléfonos inteligentes. Sé cómo se vería un teléfono perfecto, que no existe actualmente.

¿Es común que los fundadores de startups experimenten la soledad? ¿Qué puedo hacer para combatir mi propia soledad?

¿Qué tipo de procedimientos legales están involucrados con la recepción y el financiamiento de nuevas empresas?

¿Qué se necesita para construir un negocio que gana 1Cr o $ 500k en la línea superior en su primer año?

Estoy persiguiendo un B.Tech en CSE. Estoy pensando en un inicio de comercio electrónico y estoy usando PHP como servidor (del cual tengo conocimientos básicos). ¿Qué cosas importantes debo tener en cuenta al construir e-comm y también algunos buenos libros o tutoriales para que PHP se convierta en un experto y los pasos para construir un e-comm exitoso?

¿Qué necesito saber si quiero ser un emprendedor tecnológico con experiencia en negocios?

¿Hay alguna consecuencia / implicación de los títulos ejecutivos en startups?

¿Cuál es el negocio en casa más fácil de comenzar en Kuwait?

¿Cuáles son las opciones de negocios que se pueden iniciar en una tierra árida de un lakh pies cuadrados?

¿Cómo encuentran las personas en la universidad el tiempo para iniciar una startup?

¿Qué herramientas utilizas para monitorear los rumores sobre tu inicio?

En una startup, ¿qué pasa si mi codificador deja el trabajo y copia mi propia idea?

¿Cuáles son las finanzas de ShopClues con sede en India? ¿Es una compañía de Unicornio de mil millones de dólares?

¿Debo incluir que tengo mi propio negocio en mi currículum mientras solicito trabajo?