Codeable connects a community of elite WordPress development experts from around the world with businesses that need a WordPress site built, developed, maintained, fixed, or optimized. We’re the only WordPress exclusive services platform and community, with over 500 freelance developers and teams, delivering projects of all sizes to clients globally.
Our mission is to build the most vibrant WordPress developer services community and to create a better way of working for all parties in the WordPress ecosystem when it comes to WordPress websites, whether that’s for developers, clients, or partners. And building the technology for the platform is where you come in.
We're looking for an experienced back-end engineer to join our (fully distributed) Platform & Product team to help take the platform on to the next level, supporting the growing needs of the Codeable business and the client, expert and partner communities who we work with. So if you're an experienced back-end engineer with a special love for Ruby (and Rails) and you like the sound of our mission, then read on.....
We are looking for a performance-minded back-end engineer with an eye towards writing well-designed, maintainable code who will be responsible for managing and maintaining our back-end system(s) and operating related services connected to it and make sure they (become and) stay performant.
Your primary focus will be the development of server-side logic, ensuring high performance and responsiveness of our back-end system and related services, like our databases (PostgreSQL, Redis), background jobs system (Sidekiq), and other services (internal and external).
Since our system is not very new (over 6 years old now), there are a lot of opportunities to make it better and scalable so we can speed up the growth of our business worry-free. If you are someone who is not afraid to grab a system by its cables and get your hands dirty then you’re at the right place.
- Collaborating within our product team to develop new features, fix bugs and reduce technical debt (you will be involved in the whole application lifecycle)
- Defining and communicating technical requirements
- Building high-quality systems that can be (re)used and extended in the future
- Helping set the design/architectural guidelines to make sure our codebase is improving
- Making sure our back-end is scalable (fast response times, optimized DB queries, …)
- Troubleshooting, debugging and fixing production issues
- 7+ years production experience with Ruby and Rails
- Experience building & growing web applications, APIs, services
- In-depth experience of back-end APIs (RESTful web services)
- In-depth experience of writing tests: unit, integration, …
- Very good understanding of databases: query performance, indexes, migrations (PostgreSQL)
- Experience working with background processing (Sidekiq) and how to optimize it for good performance
- Ability and desire to produce modular, maintainable code
- Solid understanding and experience of Git (branching workflows, managing conflicts, …)
- Solid understanding and experience with web (API) security
- Experience implementing caching on Rails APIs
- Experience working with WebSockets (we user Pusher, but that’s not a requirement)
- Strong interest in continued (personal and professional) development (learning new technologies and programming languages)
- Good communication skills (English) and willingness to improve. We value quality over quantity
- Comfortable working in a distributed environment, with a high degree of personal autonomy and responsibility
- Familiarity with Google Cloud services
- Experience with using Docker
- Experience with using and deploying to Kubernetes
- Experience with implementing GraphQL
- Familiarity with Kanban methodology (we’re using a tool called Kanbanize)
- WordPress experience is a plus (since that's the ecosystem we operate within as a business)
- Interest, familiarity or experience with Haskell/Lisp
Remote (Codeable is fully distributed with ~20 full-time employees), preferably in Europe, where the rest of the product team - where you’ll be working - is from.
Please include your resume, salary expectations, and let us know why you’re the one for us, and why we’re the one for you, in the covering message that you send.
The application period ends at the end of May (2020). We’ll then review the applications received and will contact you the following week if we want to take you forwards. The process will include regular interviews with various team members, along with some practical tests.
We’re looking for someone who can start soon after the interviews are done (start of July or the latest start of August).