Services

Design

I think a lot about design. Not just the visual aesthetic of a web site, or the user experience (though they're important!). I like to ponder on the overall structure of a system, how it interacts with the outside world, and what kind of character it should have.

I love to properly understand the business domain, and use that knowledge to feed into the design and architecture of the resulting app. I feel that putting a bit of care into the design makes for a more sustainable app in the long term. Read more »

Development

I can build the app myself from start to finish, if it's a small project. For bigger undertakings, or if you have a tight schedule, I'll assemble a team to develop the system.

I'll usually take on the role of the translation layer between the business and the development team. I turn business requirements into something a developer can build, and I turn finished code into polished, deployed, features. Read more »

Deployment

I've done my fair share of racking hardware, answering pagers at 3AM, and rapidly deploying security patches. I can create automated build systems and deployments for Ruby on Rails apps. I can scale those apps to 30,000+ customers and millions of hits.

I can do all the ancillary bits and pieces that are involved in running a Ruby on Rails application at an interesting scale: I know my way around email systems, DNS, cloud hosting, firewalls, load balancers, etc. Read more »

Consulting

I can pitch in on other consulting jobs, too. I can review existing Rails applications to look for opportunities to improve them. I can rescue Rails projects that have gone bad. I can look at the feasibility of porting applications to Rails from another framework, or porting them to another framework when your needs exceed that which Rails is suited to. Read more »

Design
What should the code say?

A big part of designing an application is about making sure that the code communicates intent. It's worth having a think about the overall design of the app to make sure that it's saying the right things, in the right way. For example, if you're building a business accounting system, then there should be a clean way of communicating the Generally Accepted Accounting Principles, and an accountant (with a bit of help!) should be able to read the intent behind the code that deals with tax. The same principle applies to most business domains.

The right architecture

Ruby on Rails helpfully gives us a lot of convention over configuration so we can get started building things, instead of worrying about where they should live.

But it's still a good idea to have a plan for the overall architecture of a system. You and I need to know what we're building right now, and we'd like to have an idea of how that system is going to grow and mature.

User experience

A good app thinks carefully about how the user will interact with it, and what kinds of users it is talking to. You and I can build out user personas, and do some user role modelling to figure out who we're working with.

Choosing frameworks

There's more than just Ruby on Rails involved in a modern web application. For example, we'll typically want to choose a suitable client-side JavaScript framework to handle the user interface. And there are loads of other opportunities to leverage existing open source software to accelerate development, if we choose wisely.

The right scale

When it comes to scaling an application, you build the right app for the scale that you're expecting. Underengineering will result in an app that falls over when your customers need it. Overengineering breeds complexity, which substantially increases costs and overheads.

You and I will want to find the right balance for your current needs, and a plan to deal with future growth at the appropriate time.

Development

FIXME OK, I've got a confession to make: this is a work in progress, and I've gotten bored of writing web site copy today!

Deployment

FIXME OK, I've got a confession to make: this is a work in progress, and I've gotten bored of writing web site copy today!

Consulting

FIXME OK, I've got a confession to make: this is a work in progress, and I've gotten bored of writing web site copy today!

Our Team

It's pretty much just me! I do have a regular team of people that I call on to help with particular aspects of a project, though, since one person can't provide for every specialisation. I can source — and manage — extra developers, designers, and site reliability engineers, depending on the needs of the project.

Graeme Mathieson

Graeme Mathieson

I've been developing web applications with the Ruby on Rails framework for over a decade now (something that not many people can claim!). Prior to that, I was building web apps in Python, and before that I was building embedded C++ code for Voice over IP gateways.

In addition to Ruby, I've got a fair chunk of experience with JavaScript, and with managing the platforms we deploy apps onto (the cool kids call this bit DevOps). I've got a BEng (Hons) in Software Engineering from the University of Edinburgh and an AAT Diploma in Accounting (don't ask).

When I'm not in the office, staring at a sea of code, I really enjoy a spot of indoor rock climbing. You can often find me hanging around the local climbing wall, trying to conquer my latest project!

Join us?

Incidentally, if you're looking to work with an awesome team, and you've got the right skills, please do get in touch. I'm always looking to expand the pool of contractors I can use for individual projects. Drop me an email, to hello@rubyonrails.co.uk, with some details on your experience and skill set.

Testimonials

I've worked with a fair number of delightful people over the past decade. Here are some of the lovely things that previous clients and colleagues have said about me:

Graeme acted as a technical consultant to Sourcerail, providing me with essential guidance and backup. The breadth and depth of his technical and commercial experience allowed him to guide us to the correct technical and business solutions to the challenges we faced while developing the application.

Working with Graeme was an absolute pleasure.

John Daniels, DevOps Engineer
DevOps Engineer, itison.com

I did some Ruby on Rails development work for Graeme recently, which was both a pleasure and an education. Graeme is one of those rare guys that is as comfortable talking to clients and interpreting their needs as he is coding the solutions to meet those needs. He knows Rails inside out but, more importantly, he also knows how best to use it to deliver great results for his clients. I learned a great deal from him during the project.

Alan Gardner, Senior Software Developer
Senior Software Developer

Highly recommended. I really enjoy working with Graeme. He is extremely good at what he does. He is very trustworthy, his code is of impeccable quality, and, for most programming tasks, he is fast - very fast. He probably thinks and types twice as fast as me! If these are qualities that you are looking for, especially trust and quality, then he is very good value for money.

It was great working with Graeme. If you go to him with anything, he'll always have some valuable insight. He is extremely helpful and does everything to a high standard. I can't recommend him highly enough.

T.J. Sheehy, Director
Director, Klir Limited

Graeme is one of the most patient, meticulous, laid back and approachable people I've ever had the pleasure to work with. His Engineering skills are at a level I aspire to, and he's been a constant source of inspiration for the time we were working together. Any team is strengthened by having Graeme on it.

Ryan Stenhouse, Ruby developer, speaker, and coach
Ruby developer, speaker, and coach

Graeme is a top-notch engineer who possesses vast and detailed knowledge about the technical inner workings of FreeAgent. He also takes on big technical challenges and sees them through. I have learned a lot from him!

Benjamin Brinckerhoff, Lead Software Engineer
Lead Software Engineer, Figly

It's rare enough to find someone that's good at one role, but Graeme somehow manages to be both an awesome technical lead and a great project manager. He has a wealth of experience and an ability to communicate both at a high level -- which makes it easy for non-technical people to understand -- and with the attention to detail that geeks crave. Any project that involves Graeme is going to be a massive success and a lot of fun.

His rich knowledge of Ruby on Rails, systems architecture and the Internet in general, combined with his practical and pragmatic approach, kept the delivery team relaxed and productive. This enabled us to successfully deliver a large system from a hugely complex set of constantly evolving requirements.

Craig Webster, Ruby & DevOps Consultant
Ruby & DevOps Consultant

The Behind the Medical Headlines site was a fairly successful pilot which we were very keen to develop further, but the site design was becoming dated, was not very user-friendly and was manually intensive in terms of staff support. As such, its ongoing development was not sustainable in its previous form.

As a result of engaging [Graeme], we now have a considerably more attractive site which is not only more user-friendly and includes a range of new features which could not have been supported under the former design, but is also considerably easier to update.

The work undertaken by [Graeme] has enabled us to reduce staff time required to support the site by approximately 300% and has increased options for staff support and cover through its easy-to-use interface. This has, importantly, provided a considerably more sustainable platform from which we can develop and support the site further.

In closing, I would add that once briefed, [Graeme] provided an excellent tailor-made service and I would strongly recommend [Graeme] to others similarly wishing to redevelop and redefine their online presence.

Graeme McAlister, Head of Fellowship & Membership Services
Head of Fellowship & Membership Services, Royal College of Physicians of Edinburgh

Azalea Innovations has used Graeme on a number of occassions, most usually to fix mission critical issues that we simply cannot handle in-house. Each and every time we are impressed with how he just gets on with it, makes things work and calms everyone down in the process.

Graeme is clearly one of those people who just understands what needs to be done. Working with incomplete, inconsistent, and often incoherent briefs, Graeme keeps his cool and works his magic.

We simply cannot recommend him highly enough.

Graham Savage, Chief Technical Officer
Chief Technical Officer, Azalea Innovations

Contact Us

Please do get in touch if you'd like me to help out on you Ruby on Rails project. I'd be delighted to get involved! The best way to get in touch is to drop me an email – use the button below – or click the speech bubble at the bottom right hand corner and leave me a message with your email address.

Send me an email

You can find me on most of the social media platforms. Here are the Wossname Industries 'corporate' (hehe) accounts, which stay mostly on topic:

Address

Wossname Industries
11 Alexandra Terrace
Teignmouth
Devon TQ14 8HA
United Kingdom
Telephone: +44 (0)7949 077744
Email: hello@rubyonrails.co.uk

Our Location

Wossname Industries is based in Devon, in the South West of England. It's a beautiful part of the world! I've got beaches, and cliffs, and moors, and the city of Exeter, all within easy reach of home. The weather's not too bad, either.

Copyright © 2016 Wossname Industries. All rights reserved. Privacy Policy | Terms of Service

"Ruby on Rails" is registered trademark of David Heinemeier Hansson. Technically, I haven't actually asked permission to use this domain name, but I've owned it since 2009 and thought I might as well put it to some use! It's better to ask forgiveness than permission, right? ;-)