Curriculum vitae
James Summerill
Senior Software Engineer · Rails · Backend systems · Practical AI
Hartlepool, County Durham, United Kingdom
[email protected]
GitHub
LinkedIn
Webcap
Profile
I build and evolve backend systems: long-lived Ruby on Rails applications, version and dependency upgrades that ship in steps rather than as a rewrite, domain boundaries the build enforces, and integrations with the legacy systems those applications cannot leave behind. Ten years of backend work, most of it Rails in production. Since 2024 I have also built independent AI and agent tooling — some of it deployed as public services, some of it still research.
Available for senior backend and Rails engineering roles in the United Kingdom — remote or hybrid, permanent.
Experience
Career break & independent technical projects
Took a career break for personal reasons and continued independent development on selected projects: deployed developer tools, AI and agent infrastructure, and experimental systems research.
Ruby on Rails Engineer → Senior Back End Developer
Maintained and evolved the primary cef.co.uk system — first on contracts that upgraded it off long-unsupported Rails versions, then full time owning cross-cutting technical health and helping steer engineering practice toward TDD, CI/CD and clearer domain boundaries.
The upgrade path, written up on the blog →
- Phase 1 · Rails 3.2 → 4.2, October 2019 — May 2020 (contract): upgraded a production retail application off a framework version that had been out of support for years, released in steps rather than as one cutover.
- Phase 2 · Rails 4.2 → 5.2, December 2020 — March 2021 (contract): the next hop, made smaller by having cleared the previous one's deprecations rather than deferring them.
- Phase 3 · March 2021 — October 2024 (full time): returned to own cross-cutting upgrades across Rails versions, gems and dependencies.
- Championed Docker containerisation and led the Bitbucket Pipelines implementation, so a green build meant a runnable environment.
- Built and maintained API integrations bridging modern applications and legacy Sybase systems.
- Advocated a modular-monolith direction using Packwerk and domain boundaries, without prematurely splitting the system into services.
- Promoted TDD and CI/CD, and shared approaches and emerging practices with the wider team.
Senior Developer / Lead Developer
Led and supported Ruby on Rails developers in a lean team, providing hands-on guidance, feedback and technical direction.
- Analysed the existing platform and documented recommendations, supporting continuity across development work.
- Contributed to hiring, collaborative working practices and iterative delivery.
Ruby on Rails Software Engineer
Maintained and extended the Rails platform and collaborated remotely with colleagues across functions.
- Worked with the Transcription Manager on an AI transcription service, reducing validation time for human reviewers and the cost of running it.
Earlier roles
Four roles across agencies and product companies, in Ruby and the web stacks of the time.
- Evvnt · Ruby Developer, April — December 2015: maintained the Ruby/Heroku website and infrastructure, and developed Ruby, Watir and Sidekiq automation that reduced manual work.
- Arnold Clark · Ruby / Web Developer, July 2014 — March 2015: worked across legacy systems and new features, including Worldpay, AWS, Rails and Swift, and built an internal office dashboard on Raspberry Pi, Dashing and Debian.
- Appkick · Lead Backend Engineer, February — November 2014: led backend development, migrated the core application from Node.js to Ruby, and introduced CI practices and improved remote-team delivery workflows.
- Green Gorilla Apps · Full Stack Web Developer, June 2013 — May 2014: maintained and extended existing web applications and fixed defects, following Git-based review practices.
Selected independent work
Independent development on selected projects, not employment. Full case studies under Work.
Independent development on selected projects, not employment.
Rails modular monolith with DDD Public repo
Packwerk boundaries, a transactional outbox and a Kafka consumer in Rails.
Webcap Live
Developer API for web capture, extraction and monitoring.
agents.shoutsid.fyi Live
A shared knowledge exchange for agents, where a claim is only verified when someone else reproduces it.
Planetary Matrix Public repo
A headless Earth-scale simulation core, partitioned into shards that do not share memory.
Toolkit
- Languages & frameworks
- Ruby, Ruby on Rails, Python, SQL, JavaScript, TypeScript
- Architecture & design
- Modular monoliths, Domain-driven design, Packwerk, Domain boundaries, Transactional outbox, Event-driven integration, Legacy integration
- Delivery & quality
- TDD, CI/CD, Bitbucket Pipelines, Docker, Dependency & framework upgrades, Code review, Developer mentoring
- Data & platforms
- PostgreSQL, MySQL, Sybase, Kafka, Heroku, AWS, Linux
- AI & systems
- Local LLM inference, Agent systems, Model routing, Evaluation & verification harnesses, PyTorch
Education
- BTEC National for IT Practitioners, Level 3 New College Durham · 2008 — 2010