Hey everyone, I would like to ask for some career advice. I finished college in Canada for a while now, and I really enjoy writing Clojure; however, every position is senior or higher. I want to get a reality check on whether I should continue with Clojure or focus on TypeScript instead. Thank you.
Yeah, Clojure was never really a great place for juniors, and now that the market is even tougher, it’s even harder. Almost all the offers I see on Slack are for mid/senior devs, and they get tons of applicants. But your leverage is local Clojure jobs. Look for companies near you - ones you’d actually be fine going to the office for full-time - that use Clojure. Even if they’re not hiring right now or don’t have junior positions open. For Clojure companies, it’s often hard to find good local candidates, because there just aren’t that many people using it or wanting to work with it. So if you reach out saying you actually want to work with Clojure, you’ll stand out.
TypeScript
@mateusz.mazurczak.dev thanks, I’ll take the TS route in terms of career. I will spend time with some large TS OSS projects first, and tinker with BB and Clojure on the side. I am sure those knowledge and experience are transferrable.
As someone who's worked with both Clojure and TS over the last couple years, I don't feel that Clojure is an ideal choice for the short or even medium-term as of 2026. However, it's a good long-term choice (unless AI changes things irreversibly). And it distinctly got me a couple TS jobs which I might have been otherwise invisible for :) So, I'd just pick it for exposing myself to interesting ideas, people, and occasionally, opportunities.
Hi. Congratulations on finishing college. My thoughts are - why not do both? I mean, you can learn both languages and ecosystems, this would keep your options open. If you land a job in Typescript - fantastic!, you can keep looking for roles in Clojure and if you eventually land a job there, you can go for it! 🙂 I thinking having knowledge and flexibility in a range of languages (not too many!) will give you better opportunties in the future 🙂
@vemv oh wow, do you mind sharing what was that?
(creating little mini projects in clojure and putting them on git hosting repository of your choice, would help too). Also, stick around this community, we are very helpful 🙂 Perhaps someone may know an opening 🙂
@dharrigan thanks, that sounds like a good strategy, and the Clojure community is the best, as always. I have no trouble with creating small apps. I wonder if you have any suggestions on whether I can contribute and learn from large production repos?
You're welcome. I suggest some of the libraries such as reitit, ring, anything under clj-commons, donut, integrant, and so on
#announcements and #releases always show new libraries/projects 🙂
Cool, thank you very much for the suggestions.
And remember that contributions to a project include more than just source code fixes / enhancements -- maintainers really appreciate documentation improvements and extra tests as well and, if you have a blog, posts about projects to improve visibility/reach.
I was very happy this morning to open my inbox and find a PR that fixed an example in the docs on next.jdbc!
Contributing to projects builds your reputation and visibility and, frankly, a lot of jobs are gained through community networking.
Thank you for your advice Sean! I never thought of that. I always feel intimidated when it comes to contribution and navigating a large code base, but I guess we all start from somewhere!
I'm not sure if you're near Toronto, but Nubank has started focusing on hiring more developers there. They have 7 openings right now. Nubank doesn't really post here in Slack about job openings, but they almost always have something open. They've been expanding their North American presence, but it's around specific cities: Toronto, Miami, Palo Alto, DC area, and Duham. https://international.nubank.com.br/jobs/
Thank you 🙏
No problem!
@koloyyee Take all advice with a grain of salt because nobody knows the future. I volunteered teaching kids Clojure in Odessa, Ukraine in 2018. this is the advice I gave https://lambdakids.stigmergy.systems/2018/5/22/graduation.blog . TLDR:I don't know. learn everything lol I think software is still a great field with endless possibilities, but the role of the software engineer is changing and will continue to change. So the best hedge is to learn as much as you can about everything you can... be a jack of all trade but a master of at least 1 thing.. maybe its clojure, maybe not. My background was in finance/econ from wharton/upenn not CS. Elon Musk is the richest wharton/upenn grad and I'm probably the poorest. similar paths very different results so take every advice with a grain of salt. And yes contributing to OSS is a great way to learn more. If none appeals to you, create something that does As for systems thinking... its not a final destination but a continual process. Systems thinking is about building bridges between seemly unrelated systems. https://datom.world/blog/computation-dimensional-expansion-compression.blog read the part on morphisms . Instead of going deep into another programming language (not as useful today than a few month ago with LLMs), learn something completely different like gauge theory.
Typescript will make you employable and Clojure will expose you to systems-level concepts. IMO Clojure is valuable as a hobby/educational language but won't get you in the door in the majority of places
And just something to think about: job satisfaction is less about language choice and more about the people you work with and the environment at work. I was advised to never take a job for the programming language. I think there's some wisdom in that
Sticking with Typescript is much more pragmatic. Thank you for your advice
Do both. TypeScript so you can get a job and Clojure so that you can see beyond the matrix. I'm not one to give career advice because my career has been the anti-career, but if you do what every body else is doing, you'll "converge to the mean" which is a pretty good place to be in for software engineers in the past few decades, but AI changes everything. The mean would be a jobless coder. The bottleneck is no longer writing code. Surface syntax of different languages don't matter (https://datom.world/blog/yin-vm-ast-chinese-characters.blog) . Clojure will help you see beyond surface syntax. If surface syntax don't matter and LLM can write code better than most humans, what matters? The ability to see a problem from a multidisciplinary perspective (systems thinking) and the ability to decompose a complex system into smaller problems that can be solved individually and recomposed in different ways to solve different problems. The ideas in Clojure are great for the latter. To become a good systems thinker, study other subjects besides software. This would be more useful in the near future than learning another formal language
@sonnyto thanks for the advice. I absolutely write enjoy Clojure and the clarity it brings. My goal was never just working in a company but beyond that. Sadly right now, I am not even in that matrix. The reason why I am asking for advice from the community because I am eager to join a team and work on a product and build the mental strength of navigating and building the system, and the process of creating the product as a whole. I worked at various startups as an intern, and built things from scratch. However, I feel that I haven't get a chance to learn the system thinking as you have mentioned. Would you suggest me to gain the knowledge in system design by contributing to OSS projects?