Proprio Direct

Nixa-logo
Nixa
  • Score Awaiting client review
    n/a
  • Date Published
  • Reading Time 3-Minute Read
Nixa-Logo-RVB

Development of new application interface architecture for Proprio Direct.

Presentation of a Success Story

  • Client: Proprio Direct (propriodirect.com)
  • Release Date: January 2016
  • Traffic: High
  • Technologies: Python
  • CMS: Custom
  • Complexity: High
  • Task: Integration, responsive, frontend development, backend development, refactor of every management tools, hosting, maintenance, SEO

Proprio Direct had 6 different technologies in web applications that do not communicate with each other. The objective was to change the architecture to ensure that websites and administrative tools are easier to maintain, can benefit from the latest web technologies, share information from one platform to another and can sustain the growing demand with reduced response time.

With over 7 million sessions annually on their main site and many sessions on various administrative tools, Proprio Direct chose an architecture that would quickly respond to multiple requests from the website and adapt to their growing need in an imminent future. That’s why we designed an architecture that allows the organization to always meet the demand. With a powerful tool like Puppet, the company can almost instantly add new cloud servers on demand. These servers contain the main website Proprio Direct and the various applications related.

We separated the API implementation of the web application in order to get better performance and to be able to deploy the two applications separately. Both applications have their own development cycle according to their different usage.

The static file server contains all of the following statistical data: 

CSS and JavaScript files

Images

One of the biggest performance benefits for a web application is to put the database on a dedicated server.

In addition, this database is accessible by other applications using a Rest API.

This server is used for daily tasks necessary in several operations of the application: 

  • Sending emails
  • Download new properties
  • Download pictures of properties
  • Download pictures of brokers
  • Resizing pictures
  • Downloading partners statistics

The virtual network allows different virtual servers to communicate with each other and increase the architectural security by allowing access to certain resources only to users already in the virtual private network.

Python was chosen for its low maintenance cost and the development speed when adding new features.

A quick overview of other important technologies in the mandate: 

  • Django
  • Jinja2
  • Ubuntu 14.04.1 LTS
  • Puppet Redis Memcache

A REST API was developed to share data from different applications to partners and enable the proper functioning of tools with a different architecture or managed by a third party.