I have a question on Clojure regarding early career prospect, let me if I should remove this. I am about to graduate from college, I mostly use Java, TypeScript, and Swift for application development, but I found Clojure powerful, fascinating, and productive, perfect for solo dev, but I still need a job for the short run in order to gain more real-world experience, any advice if I should focus on the more marketable languages and go deep with them before focusing on Clojure? or it really doesn't matter? thank you
Personally, when I was at my early career I felt that working in Clojure was too difficult for my personal context (small-town guy, in Spain where there's rarely any Clojure – much less 15 years ago!). So I intentfully decided to choose Ruby, commit to it for a number of years, and then go back to Clojure. The strategy worked really well as I could transition to Clojure at an adequate time. In the meantime, the clj knowledge greatly served me in the Ruby-centric jobs. I suspect that with the current job climate, it may also make sense to decide something similar. But you do you 🤝
There's also this list, but it's three years old so could be outdated. https://jobs-blog.braveclojure.com/2022/03/24/long-term-clojure-benefits.html#these-clojure-companies-hire-people-without-clojure-experience
Hey @vemv I totally get your point, I am about similar idea I am very into the Java Spring ecosystem, I’ll try to run some clj within my spring projects. @p-himik I wish they are still hiring so far I have even listings are usually focus having experience in the first place or knowledge in the JVM as well
Cheers.
And yeah frankly These Clojure Companies Hire People Without Clojure Experience is to be taken with a grain of salt. One generally needs to offset the lack of specific experience with something else
Job hunting is a really annoying lottery and I've learned the hard way to not become too attached to any plan/strategy. Play the game and try our best... If (and it's a big if) you have enough mental space to keep up both your knowledge (and a narrative for interviews, etc) sharpened in both Clojure and $SOMETHING_ELSE, I'd attempt this (but this is me).
Similar to you, I use Java and Typescript professionally and Clojure for solo projects. If you have time for solo projects, you’ll find that this works really well even as a professional, and that Clojure is a great education on your journey to becoming a senior software engineer.
Is Clojure likely to impress your coworkers? Your mileage may vary, but it didn’t impress mine that much. But your understanding of concepts will be expanded by exploring Clojure in my experience
I live by advice that I got from a professor; “never choose a job for the programming language”
@mario.giampietri That makes LeetCode a lot more important then lol Tbh I am not sure i have enough capacity, I want to go deep in terms of overall CS knowledge and I want to build a product, my fear would be I am going nowhere by learning 2 languages
@danielmartincraig your professor is right, I assume pick a job because of the problem or product I will be working on. as mentioned in the last message I want to use a productive language to build my own product and I know it won’t break after 2 months. Reading Programming Clojure was very eye opening especially lazy vs intermediate collection etc based on the situation, things like these makes want to go use it more. My current intermediate plan might be including Clojure into my Spring boot project
I’ll be honest currently my most productive language is actually….typescript but well I guess I want to do more in the JVM world
I agree programming language alone is not the only factor to consider a job. Still, it's an important variable to me, then to each their own (preferences, deal breakers, etc). 🙂
David, why would you ever choose a language based on industry trends? I'm sure you have plenty of personal tasks, projects and prototypes to fool around with. Why not use Clojure (or whatever you like) for those kinds of projects? If you're already proficient in three other languages, adding yet another language to your repertoire shouldn't be overwhelming. Well, if it is, then maybe do it slowly.
@ag I can’t debate with you on that! You won! 🥲 this idea is so tempting
Look, Clojure is extremely pragmatic and really is fun. Once you get the "true REPL experience"™, it's hopeless — you just can't stop loving it. Some time ago I needed to create a pipeline for re-encoding videos - I picked nbb and it took me no longer than 20 minutes to get it done, most of it was just fooling around with some sexps. The other day I decided to try a new (to me) WM — now I'm writing my entire Hyprland config in babashka script. I have a bunch of experiments like that (unrelated to my work), I'd just start a REPL and start hacking. People say you can do the same/similar shit in Python. Oh god, don't even let me start ranting on how much more painful that path is - shit fails constantly for fiddlesticks-made-of-dogshit reasons. While my Clojure experiments invariably remain useful.
For solo projects, pick Clojure.
This is what I do, but if I were job searching, I don’t have any github projects to demonstrate my other language proficiency
So maybe cultivate a variety if you have time