• listless@lemmy.cringecollective.ioOP
    link
    fedilink
    English
    arrow-up
    3
    ·
    7 months ago

    Let’s say there is a user lmicroservice. I’m on a UI team. I don’t get to tell the user service team what, or when, to implement any features.

    I’m tasked with making a page displaying all the users who have a birthday this month.

    User API service can only search by user id, email, display name, or nickname.

    Now instead of just querying the goddamn database, a one line fucking SQL statement, I have to deal with the user team, getting them to first off even admit that my use case is valid, convince them to work on the feature, coordinate with them to make sure the query works, sorts the data the way I need, etc, et. al, blah blah blah.

    They already have the next 3 sprints full so I’m sitting on my ass for the next month before I can test.

    Meanwhile they decide they’re gonna implement a super generic thing, and so despite me working on code that we talked about using an interface we talked about, they implement something else so i have to throw out half my work anyway.

    Then when I finally start using it I find, oh, it doesn’t support a sort, only returns 100 results max with no pagination, so if there’s 200 this month with a birthday fuck the 2nd hundred they don’t show up because they’re implementing bare minimum and the rest is slated for another sprint.

    And it was then, your Honor, I grabbed the lead dev for the user microservice and tossed him off the 9th story of the building.

    /sarcasm

    • Akisamb@programming.dev
      link
      fedilink
      arrow-up
      6
      ·
      7 months ago

      Now instead of just querying the goddamn database, a one line fucking SQL statement, I have to deal with the user team

      Exactly, you understand very well the purpose of microservices. You can submit a patch if you need that feature now.

      Funnily enough I’m the technical lead of the team that handles the user service in an insurance company.

      Due to direct access to our data without consulting us, we’re getting legal issues as people were using addresses to guess where people lived instead of using our endpoints.

      I guess some people really hate the validation that service layers have.

    • justcallmelarry@lemmy.dbzer0.com
      link
      fedilink
      arrow-up
      3
      ·
      7 months ago

      I know you wrote /s, but this has basically nothing to do with the tech of microservices, and more to do with internal politics.

      Switch the ”user microservice” to ”birth date is not indexed in the database and i have to reach out to the database handling team” and you are in the same situation

      • NigelFrobisher
        link
        fedilink
        arrow-up
        1
        ·
        7 months ago

        True, but the microservice concept was introduced to perform a kind of reverse-Conway Manoeuvre and make the architecture fit the team topology. Whether this has ever worked is still unclear to me, but I’ve seen it not work a few times now.