You know what’s a hard pill to swallow for Jenkins haters? It’s likely older than your career, and is going to outlive you too. Like bash, and C, and gnu-utils.
Want to appear godlike in any org? Learn a tiny amount of groovy and read the pipelines pages - https://www.jenkins.io/doc/book/pipeline/
Jenkins is battle tested, Jenkins is likely already in your org, and replacing it for anything else is almost not worth the time from a strategic perspective. But it isn’t perfect, testing it in particular - a pain in the ass
So here’s the best tip: skinny Jenkinsfiles. When you use a sh: have it run a Makefile command, or your build tool command. Keep them short single line things. Don’t rely on massive ENVs. Dockerfiles for most stuff. Dynamic container agents in the cloud are actually good. Learn to use archiveArtifact, integrate with test report plugins. Learn about parallel pipelines.
why do you recommend other tools over things which are tested and will last way longer than whatever the current fad is? The best part of Jenkins is it’s ubiquitousness - writing code that will run forever is not to be sniffed at