¿Debería un equipo de desarrollo de software que realiza un microservicio permitir solicitudes de extracción externas o no?

Esto depende principalmente de muchas cosas.

Tamaño de los equipos, cantidad de cruces, número de equipos, madurez del producto, etc.

Normalmente sugeriría que si tiene varias bibliotecas que utilizan muchas personas, debe tener un equipo central para mantenerlas.

Se supone que los microservicios son más independientes, por lo que si tiene muchas demandas cruzadas, puede estar haciendo algo mal.

Es posible que necesite agregar nuevos servicios interconectados, pero cambiar los existentes debería ser raro, si es que lo es. Esto significa que antes de que comience el desarrollo (suponiendo una metodología ágil), las nuevas interfaces deben definirse y coordinarse en un scrum de scrums.

Si le resulta difícil trabajar en paralelo, afirmaría que uno de los siguientes es cierto.

  1. Su organización necesita una mejor organización.
  2. Su producto es muy inmaduro y necesita más trabajo.
  3. No utiliza las herramientas adecuadas (para fusionar y tal, sugeriría git tal vez).
  4. Su producto no es un buen candidato para los micro servicios y está tratando de encajar una palabra de moda cuando no debe usarse.
  5. Su organización no está bien estructurada para micro servicios.

En resumen, si intenta aplicar palabras de moda porque suenan bien, está contribuyendo a un código incorrecto, estaré más que feliz de cobrarle una tarifa significativa para limpiar el desorden más tarde;).

No uses las cosas porque suenan bien, úsalas porque tienen sentido. Si tienen sentido, lo resolverás. No existe una definición clara de “microservicios”, no es nada tan especial, quizás necesite volver a diseñar cómo aborda la idea.

En mi opinión personal, el equipo debe tener la propiedad total del código y nadie más debe poder alterarlo. Además de la escalabilidad y la redundancia de esta arquitectura, los microservicios deben ser propiedad y estar controlados por el equipo que la creó. Preferiblemente, cada servicio debe tener una wiki y una página de API swagger (si está utilizando HTTP para la comunicación). Los consumidores deben entonces integrar este servicio a su servicio.

More Interesting

¿Cuánto cuesta en tiempo y dinero cambiar de desarrollador de software senior a científico de datos?

¿Dónde está el mejor lugar para encontrar desarrolladores talentosos de Ruby en el Área de la Bahía?

¿Es vergonzoso trabajar como desarrollador junior de software a los 32 años?

Soy un desarrollador de software que también está interesado en el análisis de negocios, ¿qué perfil en la industria del software puede obtener el trabajo que me interesa hacer?

¿Por qué algunas empresas que desarrollan software no valoran a los científicos teóricos?

¿Cuáles son algunos consejos o trucos que ayudan a lograr un equipo de desarrollo de software remoto o distribuido altamente productivo?

¿Cuál es el alcance de Pega? ¿Es una buena opción elegir al comienzo de una carrera en comparación con Java?

Fui entrevistado para un puesto de desarrollador de software en una startup. Querían que tomara una prueba en línea de 10 horas de duración. ¿Tomarías la prueba?

Al contratar, ¿cuáles son algunas técnicas creativas para evaluar a los desarrolladores de software?

Cómo cambiar de redacción técnica (3 años de experiencia) a desarrollador de software (PG en informática)

¿Cuál es / son las mejores filosofías de desarrollo de software?

¿Qué se entiende por desarrollador de software?

¿Cuáles son algunas alternativas de Stack Overflow aptas para principiantes?

Como desarrollador de software y una persona altamente insegura, temo hacer una revisión del código, ya que me siento tonto cuando mis colegas revisan mi código. ¿Qué tengo que hacer?

¿Cuál es el mejor plan de bonificación para desarrolladores de software?