Web Application Development

Our Three Pillars

Easy to Use

Easy to Use

Software can always be as complex as you want. What makes your application unique is a combination of good understanding of your business and how you expose the complexity to your users. We go the extra mile crafting the user experience and making sure we deliver something that people not only are willing to use but want to use.

Reliable

Reliable

As with most engineered products, software needs to be built with the right tools and with a long term view in mind, since day one. When we tackle new projects we make sure the solution developed can adapt to change without major design changes from its original concept.

Fast

Fast

Performance is a feature and it affects the way you work. Fast response times are becoming increasingly essential for the success of any online product. For each project we deliver we spend extra time making sure both the front-end and backend are optimized for best performance. Our aim is to deliver fast websites, not average ones.

A typical PixBuffer project

Backend

Our goal is to write code that performs well and is easy to maintain. We do code review on a regular basis, adopt proper coding style (PEP-8 for Python code) as well as code and workflow documentation. We are perfectionists, although we also believe that done is sometimes better than perfect.

Front-end

It's been proven that at least 80% of the time it takes to display a web page happens after the HTML document has been downloaded. By using a Content Delivery Network (CDN) for media files, merging CSS and Javascript files into fewer files, as well using minification and compression (among other techniques), we manage to get your website faster then the vast majority of the websites out there.

Mobile and Tablet optimized

We are experts in building responsive websites. Since the very first version of your web app's front-end, we will ensure it will adapt properly to different screens of mobile devices and tablets.

QA
QA

Writting software to test software is an old software engineering practice that stands for high quality software. This is an area undervalued by most companies. We adopt a test driven approach for most of our projects, as well as using tools like Jenkins to continously monitor the software stack and detect possible issues before they hit production.

Deployment

Using technologies such as Nginx, Varnish, Redis and gunicorn, your website gets faster, scalable and with plenty of room to grow at a very competitive cost.

Security

Security is an integral part of our process for both deployment and maintenance of any of our projects. From day one we start by setting up servers with the latest security patches, optimizing SSH settings, web server settings and Firewall. Then we go the extra mile making sure the web apps are secure against CSRF attacks, SQL injection attacks and encrypting user passwords in our database, among other practices.

Backup

For all our projects we keep both application data, including media files, and source code backed up daily on multiple secure locations. Some projects may have live backups or hourly backups as well.

Monitoring

We like to be proactive as much as possible. That being said, things will always go wrong one day, and it's important to be the first to know when they go wrong. We use tools like Nagios and Pingdom to monitor our servers every minute as well as tracking our response times and other stats.