Software Craftsmanship is at the heart of our company. We build well-crafted software and help development teams to get better at continuously delivering software through the application of Extreme Programming practices and Software Craftsmanship values.
In 2010, our founders started the London Software Craftsmanship Community (LSCC) which has grown to become the largest and most active Software Craftsmanship community in the world, with more than 4,000 developers that meet a few times a month to share and learn. Codurance was founded in 2013 and inherited the same community spirit.
We are a truly transparent organisation; everything from salaries to company finances are made available to everyone from day one. We have a flat management structure, with everyone in the company having an equal voice on how to improve our business. Got a new idea? Find two others that share your vision, form an ‘initiative circle’ and run with it.
Continuous learning is a mindset shared by everyone in our organisation. Whether that’s attending one of our evening catch-ups on new technologies, reading blog posts/articles, listening to podcasts, or speaking at a conference, we are all constantly looking for new ways to improve, and are enthusiastic about sharing new knowledge with our colleagues.
We are looking for Software Craftspeople that share the same values of pragmatism, professionalism and transparency that we do. Working exclusively in London (we don’t like to travel very far), we support our clients in many ways and you will have the opportunity to work on a wide range of different internal and client projects. Perhaps you’ll work on a client project from our offices with our team delivery approach. This may be a greenfield project for a startup or helping to build a mission-critical system for a large enterprise client. Perhaps you’ll work as an embedded craftsperson, working within our client’s existing development to help them to get better at writing their own software. Or maybe you’re more interested in helping to introduce the values of Craftsmanship to an organisation through coaching&mentoring.
What about you?
You consider yourself a software craftsperson. For you, writing code is part of your job and also a source of joy. Test-Driven Development is how you like to or would prefer to write code – preferring to work in small increments, trying things out and iterating rapidly, tightening the feedback loop as much as possible, and letting your tests drive the design of the code.
You are a team player. You understand that software lives on long after it is first delivered and that many different people will contribute to it over its lifetime. You enjoy frequent collaboration, and pair-programming (if you’ve had the opportunity to do it). As a curious developer, you spend time investing in your craft, learning new technologies and practicing different techniques and approaches.
The skills that you possess
Practices: You have experience with Extreme Programming practices, along with a good understanding of different Agile practices and how they can help a team to work effectively. It’s an added bonus if you have worked with setting up build pipelines and automation (Continuous Deployment).
Design and Architecture: A good appreciation for software design at the micro and macro level. For instance, being aware of SOLID principles and Domain Driven Design (DDD). You naturally follow Clean Code principles and have an understanding of different types of architecture (e.g. layered and hexagonal architectures, microservices, CQRS and Event Sourcing). You understand the basic principles of security, logging, monitoring, and supporting projects in production.
Experience: Ideally, you will have experience working in a business environment, within a team delivering high-quality software, managing stakeholder relationships and negotiating time critical milestones when necessary.
.NET, C#, Java, Scala, Node.js.NET, C#, F#, TDD, Java, Clojure, Scala, Node.js