cool angle-down angle-up angle-right angle-left check clear--day clear--night cloudy--day cloudy--night foggy github-alt heavy-rain heavy-snow light-rain light-snow lightening linkedin mail overcast phone skype

What I do

  • Full-stack development

    I can support your design and development teams with front and back-end development, Content Management System (CMS) setup, database setup, as well as testing, deployment, and workflow setup.

  • JavaScript Apps

    I ♥ JavaScript and always keep up to date with the latest frameworks like Angular and React. That means fast, responsive, and modular apps that can run on any device.

  • Design / UX

    I design clean and simple user interfaces directly in the web browser, without the need for static comps. That makes my designs testable, modular, scalable, reusable, more realistic, and quicker to produce.

  • Project Management

    Producing a web project on time and on budget requires the coordination of many different roles. I have experience in all of these roles and follow an agile methodology that involves breaking the project into small workable chunks, then tracking and reporting on a daily basis.

  • Consultancy

    I enjoy teaching and fixing things. If you or your team are finding problems with how you work together, how to scale your codebase, how to optimise your design process, how to write more modular UIs then I can help increase the value of your product or organisation.

Some of the companies I've worked for

  • Apple
  • Diageo
  • Lufthansa
  • Western Union
  • Village Roadshow
  • Lowe Profero

How much?

My fees are based on the  project timeline and requirements , roughly calculated on a weekly rate. If you let me know your budget and requirements then we can discuss what can be achieved within your timeframe. I invoice weekly, and my rate becomes cheaper for longer projects. I require a 33% up-front deposit for new clients. To give you a rough idea of how much I might charge for your project…

(my minimum weekly rate is about $2,000)

$3,000

($75 / hour)

Get in touch

About Me

I grew up in Jersey (the old one), studied computer science at Manchester University, and then moved to China in 2005, for an adventure. I lived in Beijing until 2014, at one point working as a national TV weatherman (They got to the top line of my CV, saw I had my own suit, and the job was in the bag). Beijing was indeed an adventure, and it was a priviledge to see the mind-numbing pace of change first hand. While I was there I got to experience the burgeoning tech scene, attending several conferences, and even hosting the W3C conference in 2011. I currently live in Kunming, in SouthWest China, not too far from the Laos & Vietnam borders and in the foothills of the Tibetan plateau, where the air is much cleaner, with my yoga teacher wife and 3 dogs. My Chinese is pretty good now .

My wife and 3 dogs
My wife and some of our dogs

Since moving to China, the only 2 things I really missed from home were beer and people. Well, I taught myself to brew beer, set up a little nanobrewery, and also established the Kunming Craft Beer Society, for which I teach others how to brew and organise festivals and events with local businesses. As for people? I guess that's where tech comes in, connecting us and making the world smaller.

My Experience

I began programming in Visual Basic, the gateway drug, when I was 13. At the time, the web was just getting started and I soon jumped into web development, trying every kind of technology I could get my head around. I set up my own web design company when I was 16, serving local businesses. Computer science at university was somewhat of a disappointment - the low-level details of how computers worked was too far removed from what I enjoyed about the web, being able to make cool stuff that everyone can use. To get back to the creative side, I went on to do a course in Graphic Design at Central St. Martin's College London. Then soon after moving to China I worked as a graphic designer for the country's most well-known design agency, ZhengBang. It wasn't long before I returned to tech, setting up the agency's website section with another colleague. In those days I was mainly working with Flash…. I continued focusing on web technology, working freelance for a few years and learning as much as I could about CSS, JavaScript, PHP, Ruby, and Python.

In 2011 I joined Profero, now Lowe Profero, a well-known global digital marketing agency. The Beijing office was the technology production office, a team of about 40 people carrying out most of the design, development, and testing for big-name global clients. In my 3 years there I covered many roles including:

  • Front-end Developer
  • Leading the accounts team ~ 5 people, liaising between clients and the production team
  • Studio Lead, heading up project management for the production team ~ 30 people
  • Head of Research and Development, building prototypes with new technologies, selling them to clients, and training the production team

After freelancing successfully for almost 3 years, I joined VML (Southeast Asia & India) as a Senior Project Manager. My role has so far been client-facing, dealing with the challenges of introducing agile practices to the client organisation.

What I Do Now

Put simply, I work with tech and marketing teams to make great products. As a freelancer, I have to cover many roles, but what I particularly specialise in is front-end development. I think the most important skill of any web professional is the ability to learn. That or empathy…. The range of tools, technologies, and techniques required to make a web project successful grows and changes every day, so we as web professionals have to change with it. That's why I spend some time each day just reading and practicing. Front-end is an area that's developing most rapidly, perhaps due to the rising popularity of JavaScript and snazzy frameworks like Angular and React, but also probably due to the low barrier to entry. That's not to say it's easy! Front-end covers 3 languages at least - HTML, CSS, and JavaScript - each with their own best practices and paradigms. When playing the role of a front-end developer, one must consider:

  • The semantics and accessibility of the markup, how machine-readable it is, that is how well search engines and tools used by disabled users can parse the content
  • The modularity and specificity of the CSS, how parts of the web page or app can be styled differently but in a way that can be re-used and won't break other parts of the page or app
  • The scalability and maintainability of the code, to ensure that you or someone else can build upon what you've already made without breaking anything
  • The device agnosticism and browser compatibility
  • The performance is especially important with increasing mobile device usage, so that means knowing about how the files should be written, processed, and served

And that's not all. Often development teams might lack the knowledge, skills, or simply time to ensure that all these best practices are being followed through. That's where someone like me comes in. I generally work on products or long-running projects that require such a focus on performance, scalability, and maintainability. Either as a sole developer or as part of a team, I start with short initial kick-off sprints that are focused on setting up workflows and architectures. This gives my clients flexibility and security as they know their project can continue to grow safely and efficiently, whether they hire me to continue developing it or just rely on their existing team.

I like to write very clean, readable code. That's not just because I'm a neat freak but also to make sure that anyone who works with me or takes over a project from me can do so easily, and be able to understand how it all works. I organise all my files and folders and document everything. Don't believe me? Check out the code for this site.

An example of my clean code

The UI design is increasingly dependent on front-end coding as well. The industry is only now starting to realise that the limitations of the code places constraints on the design possibilities. Not just that, the shift towards the mobile web has forced us to think up cleaner, more efficient user interfaces that perform faster and more smoothly. The best way to design, then, is to do it right in the web browser. I like to design small, modular chunks that get put together to make the final product; in this way the design is modular and scalable. After all, a web project is no longer a collection of pages, but a system for delivering some content or functionality. By doing the design work using code, rather than a tool like Photoshop, I can show you the design exactly as it will appear in the final product. You can not only see it, but you can test it, use it, touch it, pinch it and zoom it, turn it, interact with it. I design websites and apps, not pictures of websites and apps. If there's anything that needs changing, it's a very quick and easy fix. The best part? No more development work is needed - the design doesn't have to be passed on to someone to code up because it's already coded up. It saves you time and money!

If you like you can have a look at an example of a style guide for my own website. I didn't build this - it's generated from the code automatically - but it does help me get an overview sense of the theme that will be used on my website, as well as a guide for future development.

For a web project to run smoothly, communication, collaboration, and organisation are key. While working on a project in any role I like to follow this kind of project management methodology:

  • Detailed requirements gathering, including explicit and measurable business and performance goals
  • Content strategy planning
  • Accurate features list, broken down into the most basic manageable blocks
  • Design, development and testing in unison, with each feature acting like a sprint; once a component is built then we know it looks good and it works well, so we can move on in safe knowledge that it meets our goal and it won't break later
  • Constant communication availability via a slack channel or equivalent
  • Daily standups to provide progress updates and get feedback from all stakeholders
  • Flexible timelines, because a web project is never finished
  • Gathering of performance and usability analytics to measure against original goals in a project review
  • Smooth handover, including documentation and training as necessary

If you think your project might need a developer, a designer, or a project manager like me, then let me know. Otherwise maybe you already have a capable team but are about to start an unusually large project? Maybe I can help there too, advising them on a performant, pragmatic, agile, and robust workflow? Maybe I can help you get started?

If you're ready to get started, please do have a look at my contract.

If you're still not convinced, then you might find my blog interesting. I write articles about the various roles involved in producing web projects, as well as tutorials and my thoughts about the industry in general.

My Goals

My ultimate goal is just to make cool stuff on the web. It's that simple.

Specifically though, I want to focus on broadening my client base and the types of clients and projects I take on so that I can learn more. I also want to write more blog articles and continue to build more side-projects. If you'd like to read my blog, you can find it here, or if you'd like to keep an eye on my side projects then you can follow me on Github.

Referral Scheme

As a freelancer, I am dependent on referrals. It saves me a lot of time and effort looking and screening for and the work that I want to take on. A lot of my existing work has come from friends and former colleagues and employers. I am extremely grateful for this, and so I want to offer a basic referral scheme to anyone directly responsible for me starting work with their company. To such a person I will award a USD$50 voucher at a retailer of their choice as a small gesture of thanks.

Terms

I want to keep this informal and friendly, and don't want to stick to these rules too closely; it's just that nor do I want to be cheated : )

  • Only one voucher per engagement
  • Only one person can receive the voucher
  • I won't give out a referral code or anything like that - please ask the person who contacts me to include your name and email address
  • The voucher will only be issued once the first invoice has cleared
  • No voucher will be issued if I am not engaged to work for your company
  • Vouchers will only be issued for engagements lasting 1 week of full-time work or more
  • Referrals cannot be back-dated
  • Conditions are subject to change at my discretion

Strange situations might be dealt with on a case-by-case basis, but otherwise if you have any questions then please do email me at darryl@yourweb.expert.

My Contract
Download PDF versionPrint this page

*things that change based on the project are in blue

Between me (Darryl Snow)
and you [your name]

Summary:

I’ll always do my best to fulfil your needs and meet your expectations, but it’s important to have things written down so that we both know what’s what, who should do what and when, and what will happen if something goes wrong. In this contract you won’t find any complicated legal terms or long passages of unreadable text. I’ve no desire to trick you into signing something that you might later regret. What I do want is what’s best for both parties, now and in the future.

So in short;

You ([your name]), located at [your address], are hiring me (Darryl Snow) to [design/develop/manage/consult on a web site/app/digital product] for the estimated total price of [total] as outlined in my previous correspondence. Of course it’s a little more complicated, but I’ll get to that.

What do both parties agree to do?

You: You have the authority to enter into this contract on behalf of yourself, your company or your organisation. You’ll give me the assets and information I tell you I need to complete the project. You’ll do this when I ask and provide it in the formats I need. You’ll review my work, provide feedback and approval in a timely manner too. Deadlines work two ways, so you’ll also be bound by dates we set together. You also agree to stick to the payment schedule set out at the end of this contract.

Me: I have the experience and ability to do everything I’ve agreed with you and I’ll do it all in a professional and timely manner. I’ll endeavour to meet every deadline that’s set and on top of that I'll maintain the confidentiality of everything you give me.

Design

I create look-and-feel designs, and flexible layouts that adapt to the capabilities of many devices and screen sizes. I create designs iteratively and use predominantly HTML and CSS so I don’t waste time mocking up every template as a static and unrealistic visual. I may use visuals to indicate a creative direction (colour, texture and typography.) I call that “atmosphere.”

You’ll have plenty of opportunities to review my work and provide feedback. I’ll share a Github repository with you and we’ll have regular, possibly daily contact. If, at any stage, you’re not happy with the direction my work is taking, you’ll pay me in full for everything I’ve produced until that point and cancel this contract.

Text content

Unless agreed separately, I'm not responsible for inputting text or images into your content management system or creating every page on your website. I do not provide professional copywriting and editing services, but if you need somebody to create new content for you, I can possibly recommend a 3rd party and provide a separate estimate for that.

Graphics and photographs

You should supply graphic files in an editable, vector digital format (e.g. AI or SVG). You should supply photographs in a high resolution digital format. If you choose to buy stock photographs, I can suggest stock libraries. If you’d like me to search for photographs for you, I can provide a separate estimate for that.

HTML, CSS and JavaScript

I deliver web pages and apps developed from HTML markup, CSS stylesheets for styling and unobtrusive JavaScript for feature detection, poly-fills and behaviours.

Back-end systems and Databases

I create back-end APIs using JavaScript and NodeJS. Should you also require a data store, I can help you set up an SQL or NoSQL database, depending on requirements. If you require a Content Management System, I can set up Wordpress or a static site generator.

Browser testing

Browser testing no longer means attempting to make a website look the same in browsers of different capabilities or on devices with different size screens. It does mean ensuring that a person’s experience of a design should be appropriate to the capabilities of a browser or device.

Desktop browser testing

I test my work in current versions of major desktop browsers including those made by Apple (Safari), Google (Chrome), Microsoft (Edge), Mozilla Firefox and Opera. I’ll also test to ensure that people who use Microsoft Internet Explorer 11 for Windows get an appropriate experience. I won’t test in other older browsers unless we agreed separately. If you need an enhanced design for an older browser, I can provide a separate estimate for that.

Mobile browser testing

Testing using popular smaller screen devices is essential in ensuring that a person’s experience of a design is appropriate to the capabilities of the device they’re using. I test my designs in:

iOS 9: Safari, Google Chrome
Android: Google Chrome on Android Emulator

I won’t test in Blackberry, Opera Mini/Mobile, specific Android devices, Windows or other mobile browsers unless we agreed separately. If you need me to test using these, I can provide a separate estimate for that.

Technical support

I'm not a website hosting company so I don’t offer support for website hosting, email or other services relating to hosting. You may already have professional hosting and you might even manage that hosting in-house; if you do, great. If you don’t, I can set up an account for you at one of my preferred hosting providers. I can set up your site on a server, plus any statistics software such as Google Analytics and I can provide a separate estimate for that. Then, the updates to, and management of that server will be up to you.

Search engine optimisation (SEO)

I don’t guarantee improvements to your web site or app’s search engine ranking, but the web pages that I develop are accessible to and optimised for search engines.

Changes and revisions

I know from experience that fixed-price contracts are rarely beneficial to you, as they often limit you to your earliest ideas. I don’t want to limit your ability to change your mind. The price at the beginning of this contract is based on the number of weeks that I estimate I’ll need to accomplish everything you’ve told me you want to achieve, but I'm happy to be flexible. If you want to change your mind or add anything new, that won’t be a problem as I’ll provide a separate estimate for those additional weeks.

Legal stuff

I can’t guarantee that my work will be error-free and so I can’t be liable to you or any third-party for damages, including lost profits, lost savings or other incidental, consequential or special damages, even if you’ve advised me of them. Finally, if any provision of this contract shall be unlawful, void, or for any reason unenforceable, then that provision shall be deemed severable from this contract and shall not affect the validity and enforceability of any remaining provisions.

Copyrights

First, you guarantee that all elements of text, images or other artwork you provide are either owned by you or your organisation, or that you’ve permission to use them. Then, when your final payment has cleared, copyright will be automatically assigned as follows:

You’ll own the visual elements that I create for this project and the code that I write. I’ll give you source files and finished files and you should keep them somewhere safe as I'm not required to keep a copy. You own all elements of text, images and data you provided, unless someone else owns them.

I’ll own the unique combination of these elements and code that constitutes a finished digital product and I’ll license its use to you, exclusively and in perpetuity for this project only, unless we agree otherwise.

Displaying my work

I love to show off my work, so I reserve the right to display all aspects of my creative work, including sketches, work-in-progress designs and the completed project on my portfolio and in articles on websites, in magazine articles and in books.

Payment schedule

I'm sure you understand how important it is as a small business that you pay the invoices that I send you promptly. As I'm also sure you’ll want to stay friends, you agree to stick tight to the following payment schedule.

[Payment details]

[Payment schedule]

I issue invoices electronically. My payment terms are 30 days from the date of invoice by BACS or the SWIFT international payments system. All proposals are quoted in USD and payments will be made at the equivalent conversion rate at the date the transfer is made.

You agree to pay all charges associated with international transfers of funds. The appropriate bank account details will be printed on my electronic invoice. I reserve the right to charge interest on all overdue debts at the rate of 1.5% per month or part of a month.

But where’s all the horrible small print?

Just like a parking ticket, you can’t transfer this contract to anyone else without my permission. This contract stays in place and need not be renewed. If for some reason one part of this contract becomes invalid or unenforceable, the remaining parts of it remain in place.

Although the language is simple, the intentions are serious and this contract is a legal document under exclusive jurisdiction of Jersey (Channel Islands) courts.


Signed by Darryl Snow

__________________

Signed by [your name] (on behalf of [company name])

__________________

Date [date]

Everyone should sign above and keep a copy for their records.