Process

Development

Clean, readable code. That means you are not handcuffed to us if you need to bring on new developers. It means anyone from our team, yours, or another party can jump right in.

Architecture Planning

We carefully plan out the flexibility and sustainability of our code structure. We always want to avoid shortcuts- we know that when plugins and features don’t function as they should, all hell will break loose (Maybe we’re being dramatic, but we have seen some pretty nasty stuff).

Development should be organized and logical, allowing developers and maintainers to do their job well. We will spend time with you to decide the architecture that will be the best fit for your long term goals. This can include which coding languages to use, which CMS, and how the CMS is structured (headless vs traditional for example).

We try to be agnostic to modern technologies so that we are choosing the right tools for your job and not just what we have preferences for.

Implementation

This is where we take the beautiful designs previously created and marry them with our newly planned architecture.

Working hand-in-hand with our designers (not literally...that would get awkward), our dev team code designs pixel perfect to the designers intentions. We also work intimately with our clients’ teams to make sure each page/view achieves the business objectives it is designed for.

This step may also require deep integrations to existing systems and technologies, in which we will work with those stakeholders to ensure a quality product in the end.

Development requires processes that clients do not see, but are essential. Some examples are: ensuring it is well commented and documented, streaming code, converting SVG icons to icon font files, simplifying animations for faster load times, etc. This takes time and is not always necessary for a project’s functionality, but improves the performance and makes it easier for future developers to build on. Rushing through this makes it harder for future updates.

Quality Assurance

We’re obsessed with producing quality code. An internal philosophy we have is to make sure every piece of code we write can be picked up by someone else in the future without needing help to figure it out.

Thoroughly tested code cannot be accomplished in a short amount of time. We test on all modern browsers and mobile devices.If a project absolutely must be bug-free, it should be clearly communicated before beginning a project as it will increase the timeline and budget. This is typically reserved for projects where bugs could immediately cause significant damage to the company, like a big ecommerce site. It is a business decision to decide if it is worth the extra development time in relation to the risked loss of sales.

The Quality Assurance process with our clients typically comes when the development is nearing completion, not during. We do our own quality assurance while building the product. During the joint QA process, communication between developers and our customers is rapid and frequent.

During this phase, if extra features are requested, the design team should be consulted before asking development to implement them. Last minute changes that affect design often lead to a poor UI.

Deployment

The most exciting (and sometimes nerve-wracking) part of a project. We work with our clients and often other partners to ensure a smooth launch. This includes extensive testing, SEO preparation, and user updates.

We have launched hundreds of applications and websites with huge audiences. We will follow all best practices to ensure a successful launch that improves user experience, is free from errors, and improves search rankings.

Maintenance

Modern technologies need to be updated to account for changes to browsers, servers, third party software, and security. We often work with clients for years on a month to month or ad hoc basis to add new features and overall maintenance of the products.