Ë
Case Studies
Navtech ​Tax Credit Administration -> Node/AngularJS: Finance and accounts monitoring platform

Navtech built a micro services architecture to address scale up and consolidation of various monitoring strategies for a finance and accounts monitoring company.

Tax-Audit

About The Client
Navtech’s client is a finance and accounts monitoring company which helps medium and large corporations get optimal tax benefits.

Business Objective
Navtech’s client had multiple platforms that were needed to manage their backend and sales operations. These solutions gave a siloed view of their data and Navtech’s client wanted to migrate to a setup that gave a unified platform which can scale, integrate with their clients.

Why The NodeJS and AngularJS Platform?
AngularJS is a single page application framework. This means that we require a server for certain tasks. By leveraging Node.js, Navtech was able to use JavaScript to write the server-applications.While developing the frontend on AngularJS, Navtech used angular-cli to generate the project structure and for creating backend services. For the backend server environment we leveraged custom coding for NodeJS.To install external dependencies, NPM was used.

Platform Development On Angular
AngularJS enables both emerging as well as large enterprises to transform their business by building scalable online platforms. AngularJS, ensured a seamless creation of single page application and ease of testing.

Navtech leveraged CodeShip for Continuous Integration, Runscope for API Automation Testing and Monitoring. AngularJS along with Node.js backend server was used to connect with other Java-based Servers via RESTAPI, and Amazon Web Services for cloud and infrastructure management

  • Elastic Cloud Compute (EC2)
  • Auto scaling group (ASG)
  • Elastic Load Balancer (ELB)
  • Relational Database (RDS)
  • Elasticache (Redis) .
  • CodeDeploy.

Developer Agility
Navtech evangelizes DevOps and developer agility as part of its development strategy and has significantly taken advantage of AWS in various deployment mechanism like

  • xlarge
  • Hi1.4xlarge
  • Cc2.8xlarge
  • 1.microa

This solution enables auto-scaling. It further helped to scale up and down the infrastructure seamlessly and save on cloud expense. This process was implemented by AWS management of their load balancing tier through Elastic Load Balancing (ELB). It allowed automatic activation and deactivation of instances as the requirement demanded.Agile infrastructure isn’t relevant without agile development practices. To facilitate continuous integration, the Navtech engineering team utilized Atlassian Bamboo for Continuous Integration.

Scaling teams and code with NodeJS
Navtech decided to leverage NodeJS, as it is perfect for microservices. Node.js is a go to technology to create microservices - the architecture logic within NodeJS executes small manageable modules instead of a code monolith ensuring that container driven development is a pain less exercise.

With the rich ecosystem that npm has brought to the table for Node.js - a registry of more than 350k free tools for a variety of use cases. Opting for NodeJS as a backend platform is an easy option to make. On another note similar to Node.js’ npm, Ruby on Rails has its own set of packages called GEMS, but when it comes to performance, Node.js has a much better performance and scalability.

Architectural Patterns
While building the platform, Navtech followed the single threaded event loop architecture in Nodejs. With NodeJS suitability for high load IO bound applications that require less computationchoosing this as an option was a logical exercise.

Solution
Navtech developed a micro service architecture based API’s for its client to unify it’s platform and have various web/mobile clients feed data into a single system. This allowed Retrotax to have consistent data. The API based architecture enabled Retrotax to integrate with various third-party clients; which expanded the potential of technology. It also provided a path for wide-scale automation and allowed for automatic upload of qualified tax credits to the state website using Selenium.

Testing
Navtech’s default development philosophy is driven by DevOps. We leveraged the below tool stack to achieve this:

  • Run-scope for API Automation Testing and Monitoring
  • CodeShip for Continuous Integration
  • Selenium/Watir WebDriver

Documentation
The team found the online documentation with extensive examples which really helped to jump-start the development. 

Project Scope
The project had a broad scope included:

  • Analysis of the solution, designing a migration plan, evaluating components of the solution stack and developing a migration plan.
  • Development of a Responsive and intuitive portal that ensures seamless discovery and management of various client and operations applications.

Development Methodology 
Navtech leveraged DevOps driven development for this project. Our developers leveraged CodeShip for Continuous Integration. Then they used a file to create the functioning of the code which dictates the basic operating system as well as the steps for building their code into an image. Once the designs are completed locally, they are then pushed. This includes the Bamboo configuration to Github.

Outcome
Post the development, Navtech’s client had a unified strategy of collecting data which led to automating a large part of their work and hence was able to achieve operational efficiency driving up both their top-line and bottom-line.