Clojure job: Software Engineer


Software Engineer at Kaleidos

Remote › 🇪🇺 100% remote position (in European timezone)
  (Posted Jun 30 2024)

Please mention that you found the job at

Apply now!  

€40,000 - €60,000

Job description
We defend and believe in open-source and proof of this is that our main project, Penpot, reflects that. We’re convinced that technology isn’t neutral. That’s why we like to shake things up and go against the status quo.

Penpot is the free open-source design tool that allows true collaboration between designers and developers. Hand-off drama disappears, thanks to features like CSS Grid, Flex Layout and the Code Inspect tab.

Kaleidos is the company, boosting Penpot. If you’re interested in getting a deeper sense of our culture and values, have a look at our website to gain insight into who we are and what we believe in.

⚖ How we value experience
For us, a senior is someone who, regardless of years on the job, has dealt with tough development issues, finding solutions and learning along the way. From our perspective, it’s possible that a senior might be someone with relatively “few” years of experience but who has faced complex development challenges. On the other hand, a mid-level might be someone who, despite many years in the workforce, has had a more specialized experience and hasn’t faced those types of challenges.

Step into our world: the challenges you’ll face with us

We want to share the challenges we encounter that keep us motivated and in constant learning mode. The following list doesn’t mean we expect you to handle all of them right away—your ability to tackle these will depend on your experience. But our goal is for you to grow with us so you can hit the ground running in the future.

Vector drawing development: implementing vector drawing with transformations using DOM/SVG as the rendering base requires knowledge of matrix calculations and a high awareness of DOM performance.
Editing system design and implementation: designing and implementing an editing system for the drawing engine, with a strong focus on redo/undo capabilities and concurrent editing.
Complex data structures validation: using and validating complex data structures for structural, semantic, and referential integrity. Given the high interactivity of our application, these structures are often eventually consistent.
Low-level language module development: developing application modules in low-level languages like C, C++, or Zig to transition parts of the application to WebAssembly (WASM).
Highly interactive interface development: creating a highly interactive interface that requires coordinating multiple sources of events (e.g., an SVG path editor).
Custom rich text editor development: developing an ad-hoc rich text editor with proper handling of RTL (Right-To-Left) text and IME (Input Method Editor), and integrating it with SVG texts.
Performance optimization: coming up with creative solutions to performance issues when pushing the limits of browser capabilities. For instance, using bitmap thumbnails to offload parts of the SVG DOM in a highly concurrent and eventually consistent environment, while correctly handling possible race conditions.
New functionality: adding new features using ClojureScript and Reactive Streams (RX).

Profile and skills
🪐 What do we need?

We believe that education can be acquired in many ways, not just through a degree. That’s why we don’t require specific formal education, but we do expect you to have experience in the following areas:

Functional language programming paradigm experience (Clojure/Clojurescript, Scheme, Haskell, Scala…).
Experience in or willingness to learn the Clojure/Clojurescript functional programming language.
Background as a frontend developer (with an emphasis on deep knowledge JS and Browser APIs).
Experience working with HTML and CSS.
Enthusiasm for crafting robust user interfaces.
Languages skills: proficient in spoken and written English (B2 level) and proficient in spoken and written Spanish (B1 level)

✨ Bonus points: elevate your profile

For us, your experience is defined by your ability to tackle and enjoy solving problems like the ones we face. If you’ve encountered similar challenges, you can probably check off several points from the following list.

Enthusiasm for exploring low-level programming languages (C++, Zig).
Experience working with JS frameworks (React or similar).
Experience in developing production code with thousands of users.
Knowledge of web front-end testing (Jest, Cypress, etc.).
Prior experience or a keen interest in open-source projects.
Experience or interest in agile methodologies in a professional setting.
Track record of collaborative engagement within cross-functional teams (including designers, marketing professionals, backend developers, etc.).
Ability to ask the right questions for effective product development.
Understanding how JavaScript performs (knowing about V8 and SpiderMonkey is a big plus).
A solid grasp of RxJS.

🫂 Who will you be working with?

At Kaleidos we have several teams: the Community team, the QA team, the Infrastructure team, and the Product team. We’re all rowing in the same direction to drive Penpot forward, but this position will be to join the daily day of the Product team. Would you like to take a peek at who we are?
🙌 What do we offer?

💰 Salary:
[Mid-level] €40-50k (gross annual salary).
[Senior] €50-60k (gross annual salary).

📜 Permanent contract. We’re looking for someone to stay with us for the long run!

⏰ Flexible hours. Even better! We all work from 10am-2pm CET. You can work the rest of your hours whenever you want. Whether you’re an early bird or a night owl, you’ll be in good company!

🌍 100% remote position. We maintain an office in Madrid (Spain), however, attendance at this location is discretionary. You are welcome to work remotely from any location with a reliable internet connection, provided that we share a time zone CET +/- 2 or you may choose to come to the office as often as you want.

🏝 23 days of paid leave, plus December 24th and 31st, and the possibility to ask for 10 extra non-paid leave days. We’re super flexible with your dates, you just need to make sure it’s fine with your team.

📅 Choose the holiday calendar of where you live or from the headquarters (Madrid).

📚 Continuous learning with internal and external training, conferences, and events (as a general rule we usually cover 100% of the cost). You’re encouraged to experiment with new best practices!

🇺🇸 🇪🇸 Language classes on the house (eng & span): classes paid for by the company as part of your work schedule.

🤩 2 PIWEEKs per year! A PIWEEK is a freeform week-long hackathon where you pause your day-to-day work and focus, either alone or in a team, on a cool project! Penpot was one of the projects born in past PIWEEKs!

🖥️ Elevate your workspace. We provide a budget every 3 years to renew the equipment and after 3 years you can keep the “old” computer equipment!

🔝 An environment where your opinion matters. We have a culture of a consensus-driven decision-making process. You’ll quickly find yourself being involved in all Kaleidos’ things.

🔓 An open-source company. Our products are open-source and we support the open source environment as much as we can. We’re fully committed.

🤝 Self-organized teams: we believe that providing autonomy and independence is key for personal and collective accountability. Teams at Kaleidos operate internally with very little hierarchy and enjoy the freedom to better organize themselves.

❤️ Alan’s health insurance through flexible compensation (coverage only in Spain).

🏹 Monthly activities for those who want to, of course, do something fun as a group: ice skating, bowling, archery, kayaking…

➡️ What is the process like?

Send an email to with the subject line “Software engineer”, tell us where you saw the job offer, and don’t forget to attach your CV. You will receive a response from us as soon as possible.

If your CV meets our requirements, we will invite you to have a 15-mins chat to understand your profile and your desires better.

At that point, if we’re aligned, we would love you to write a cover letter about your experience and why you’re interested in joining Kaleidos.

1.5-hour culture interview, to get a sense of how you see our culture, clear up any questions, get to know you more deeply, and for you to also get to know us.

1.5 hour technical interview. We’ll take this time together to review your projects. The aim is to explore how you approach things, your reasoning, and how you tackle the challenges.

1-hour interview with Pablo, our CEO. Consider this step an interview to dive deeper into Kaleidos and ask whatever you’d like!

Optional: meet with two people from Kaleidos for a private conversation to ask any questions you may have about the company and the position.

Please mention that you found the job at

Apply now!  

Company: Kaleidos

Other Clojure developer jobs that might be interesting

Clojure job Clojure Engineer at ThorTech Solutions Clojure Engineer - ThorTech Solutions   (May 2024)
Worldwide, 100% Remote - Salary: $45-55 per hour
If you want to advance your career in a progressive, fast-paced (fully remote) setting, alongside a passionate team dedicated to tackling intricate challenges through cutting-edge technologies, then w...
Clojure job Senior Developer at Redfin Senior Developer - Redfin   (May 2024)
Seattle, Washington, United States (Remote work possible) - Salary: $141,800 - 191,600
Redfin is combining technology and customer service to reinvent the end-to-end experience for buying and selling a home in the consumer’s favor. We are a mission-driven company helping people acros...
Clojure job Clojure Developer at AssureSoft Clojure Developer - AssureSoft   (May 2024)
Brasília, Brazil (Remote work possible)
The key to our success is simple; we deliver the highest quality, on time, with passion and commitment, and live every day by a set of great values. We've built a company that fosters long-term career...
Clojure job Senior Clojure Back-End Engineer at Peruse Technology Inc Senior Clojure Back-End Engineer - Peruse Technology Inc
Remote US/Canada, 100% Remote
Peruse is building the document automation backbone for the global supply chain. We are a small group of experienced and successful serial SaaS entrepreneurs with leading edge engineering talent on ...

Clojure job Software Engineer, Language Tooling at Liftoff Software Engineer, Language Tooling - Liftoff   (July 2024)
Redwood City, California, United States (Remote work possible)
Liftoff is the leading growth acceleration platform for the mobile industry, helping advertisers, publishers, game developers and DSPs scale revenue growth with solutions to market and monetize mobile...
Not the developer job you are looking for?
Browse all Clojure developer jobs and we're sure you will find a suitable one!
Browse Clojure dev jobs with similar combinations of skills
Clojure jobs + clojurescript Clojure jobs + go Clojure jobs + haskell Clojure jobs + javascript Clojure jobs + react Clojure jobs + scala Clojure jobs + webassembly