Contextualizing:
Hi, I'm 25 years old, and I've been working as a freelancer for 8 years. I mainly worked with stacks: NodeJS , React, React Native, and with TypeScript as stack superset. I've always liked programming, and I've always studied languages like: "C/C++/Rust/Go, Java/C#, Haskell, Python/Ruby, Elixir/Erlang, Clojure, Scala, Elm, PureScript... . " (despite not programming professionally in them, but I always studied doing some personal projects). Despite being a generalist (because I'm a freelancer) I always liked to deliver my work in the best way, with clean, easy and scalable code.
Problem:
In this year, I "left" the life of a freelancer and started to enter the business field. I started working with other people and started having a lot of "headaches" understanding the work of others (We use NODEJS) mainly because there are teams that use Vanilla JavaScript, others TypeScript, some do it in an OO way and others more functional ..and that's horrible for me. Although I'm not much of a fan of Java (and OO), at least I think it's more organized as they follow a strict pattern that is completely object-oriented (or in theory it should be, after Java 8 introduced lambdas).
Questions:
Despite having a senior role at the company, I sometimes worry that I'm not doing my best. I don't know if it's because it's a matter of habit, or if working in a team with OO and mixed paradigms (especially in JS) is really a mess.
I've been studying functional programming for a long time, and I'm REALLY looking to change jobs to work on some more functional language (like Clojure or Elixir) because I can understand code much better than an OO abstraction. (Or at least avoid bad code I think)
Any tips for me? thanks!