We are a lean consultancy, providing agility and flexibility, rather than red tape and complex process. We work in small specialist "squads", rather than huge, resource wasteful development teams.
We have a track record of turning complex business requirements into sustainable, scalable, and valuable software systems. If we had to describe JHJ's niche then it would be client focused. We are all techies at heart but our experience tells us that there is an over emphasis on the tech, often at the expense of the client, we want to flip that and focus on solution delivery for the client, the tech just facilitates that.
Founder & CTO
Mark has a wealth of experience in the Software Development industry, ranging from large global corporates to start-ups. Still a hands on Engineer Mark loves leading client projects and building functional teams.
"I’ve worked with Mark for nearly three years, and I’ve never known someone to be so committed to the job at hand. I could probably list what he’s qualified in, but I’m pretty sure most of it is up here somewhere, what I will tell you is that he’s a dedicated professional who is a natural problem solver, someone who can see the logic behind an issue and how to get around it. Most of all he's a nice bloke, who you can get on with and progress your project to the nth degree. I couldn’t recommend Mark enough, you just won’t go wrong with him behind you. Thanks for all your help Mark! ⭐️"
Mark started to learn Clojure around 7 years ago after becoming frustrated with working on large object oriented codebases written in Java and C#. Thinking that there must be a better way, he started investigating functional programming, and fell in love with Clojure and Lisp.
Clojure has changed the way I view many problems, even down to how I configure my text editor (vim). Traditionally I used VimScript and/or Lua to configure vim but there is nothing quite like a live REPL for building out the tools you use daily and my love for Lisp resulted in me making use of Fennel to configure vim, and in the process gaining access to a REPL.
Discovering Clojure has also made me appreciate other Clojure dialects such as ClojureDart (Dart and Flutter) and the reach they offer, while maintaining Clojure like semantics and developer productivity.