Delivering complex technology projects

All across the planet!

Twitch

Corporate healthcare company

Twitch

Sweden

Overview

Twitch is one of the leading providers of health solutions to companies that want to improve the health of their employees with measurable impact. Twitch’s core business is supported by a web portal with multiple digital services directly addressed to the customers as well as their administrative body.

Twitch assesses and improves the health of its clients by conducting online surveys about their current lifestyle, providing self help information through results and reports about their lifestyle, conducting onsite visits and tests, maintaining reports of these tests for future access and such. These functionalities are built primarily upon the web application used by Twitch administrators, client administrators, client employees and resellers.

Project Brief

Twitch’s system consists of two custom built applications:

Twitch Booking: A booking engine built on .NET platform for corporates and its employees to schedule appointments and health checkups.

Twitch Drupal: All the admin functionalities such as customer management, employee management, test results management & payment administration are carried out through a system custom built on Drupal platform.

Twitch’s system also has a self service section where employees of organizations registered with Twitch will be able to login to view their personalized test results, book appointments, contact their physician as well as compare their health status with the national average.

Twitch’s system sports payment gateway integration as well as remote test administration facilities custom built to cater to client’s requirements.Organizations also can login to view the overall health status of their employees, schedule test sessions and analyze the effect of workload being placed on their employees.

Key Points in development

mDrift inherited a system which was built by multiple vendors over time with little to no consideration on the scalability or security of the system. There was no documentation on the technical or functional aspects of the application as well.

mDrift was not only able to provide extensive support and maintain the application but performed numerous iterations of development cycles which introduced new functionalities, improved UI/UX, updated security patches etc.

Tech Stack

ISP

India

ISP

India

Internet Service Provider (ISP) Management Software

Overview

The largest Cable TV provider of Kerala, India provided mDrift with a requirement to build a custom software to manage their whole ISP operation. Due to a varied operation model where the central body distributes trunk lines to distributors and then subsequently to local operators (LCOs), where LCOs are responsible for customer acquisition and maintenance, they had a necessity to develop a custom solution as all the market available softwares worked based on a system that connects the ISP directly to end customers.

mDrift has already implemented the solution and is currently undergoing UAT and beta tests by distribution to limited nodes in the system.

Project Brief

The application consists of the following modules:

Organisation Management: Super Admins can create new Distributors, Sub Distributors and LCOs in the system, which would allows these lower admins to login and provide services through the web app. Super admins can also deactive and suspend any of these users while still maintaining the ability for end customer to enjoy an uninterrupted service.

User Management: LCOs, responsible for customer acquisition, can create users and upload the necessary documents required for allocation of a new account. These requests from multiple LCOs are processed through a predefined and configurable workflow, which lets the Super Admin verify the documents and approve the account.
All the lifecycle management functionalities of a customer are also available through the application such as recharge, plan change, bill payment, data top-up, account suspension, monitor usage and live status etc.

Revenue Management: This project contains an extensive revenue management module/ Billing solution for the ISP to have total and fully automated control on their billing and revenue department.

Credit Management: LCOs operate through a system where they buy prepaid credits and then use the credits in the system to perform recharges and other paid functionalities for their end users. This is provided to accommodate a legacy part of the client’s business operation which is still based on direct cash payment system.

Online payment gateway: The software provides a baked in online payment gateway integration to facilitate end customers to easily pay bills and recharge their accounts online. This also provides LCOs with an option to purchase their credits through online payment.

Revenue Share Management: The central body distributes the revenue among itself, distributors and sub distributors and LCOs through a revenue management module that is not only configurable for varied percentages that can be set and various tax deductions that can be configured but also is automated to frequently send the revenue share amount to its designated operators and provide update reports to all users on a frequent basis.

Reports: Extensive reporting tool was custom developed by mDrift to provide quick, customised and always available access for Super Admins to view various reports about the organisation based on revenue, user count, performance etc. These reports can then be analysed further by slicing the data across fields such as type of customer, particular LCO, time period etc.

Issue Management: The applications also sports an extensive ticketing system to manage issues not only from subscribers but also internally in the organisation for varied technical or business related issues.
Each ticket is processed through a workflow depending on its type while ensuring that all the stakeholders have a visibility of ticket and its resolution. These workflows are configurable for more advanced cases as well.

Real time: Some modules of the system are particularly developed to perform in real time,such as:

Customer create and approval: To establish an industry leading turnaround time for acquisition and activation of a subscriber, mDrift developed a real time system for the client through which LCOs can create the details of a new customer and central admins will have real time view into this to quickly view the provided details and uploaded document and subsequently approve or reject the user. The client expects to significantly improve their market presence by using this feature and providing customers with same day connection facility.

Notification: The notification system provides updates on important activities to all users in real time so that any activity, issue or update is immediately attended to.

Key points in development

Due to the nature of the project being an unconventional software, mDrift ran the entire project on an agile methodology which helped the client see the software go from concept to deployment in 3 months. Being agile helped mDrift adjust to multiple changes in the scope and requirement of the software in between the development life cycle and still achieve the required go to market date initially set by the client.

The application has undergone rigorous testing procedures to ensure that performance and fucntionalities still hold up when client hits the expected number of users and operators, which could range theoretically to 5 million in the first year of operation.

Tech Stack

8sidor

Sweden

8sidor

Sweden

Overview

Built on WordPress, 8Sidor is a news website owned by the government of Sweden that
caters to people with reading disabilities. The website was required to function and provide accurate information to any person, whatever his/ her disability could have been. It was required that people with disabilities such as blindness should be able to navigate the website and listen to news without the help of another party.

mDrift also built an Android and iOS app for 8Sidor that can perform all the same functionalities through a dedicated mobile device.

Project Brief

Prior to the project being handled by mDrift, the 8Sidor website was built upon Umbraco and also had another political news website built upon WordPress. Our project scope included not only developing the new accessibility features, but also to handle years of legacy data and migrate the same under a single website built on WordPress without any data loss whatsoever. The website also contains a subscription based section, where registered users can access the digital version of the print paper and also download audio clips for specific dates that would narrate the whole day's news to the user.

The website also contains multiple tools at the backend for admins such as, drag and drop to organise the home page consisting of breaking news, an advanced algorithm that picks up related news article based on tags provided, facility to upload and organise audio clips and match the same to news articles.

Extensive QA and testing was conducted to make sure that all these features were working as expected without taking a heavy toll on connectivity resources of the user.

Tech Stack

Frontend: Custom JavaScript, jQuery, CSS, HTML, Angular JS

Backend: WordPress, Custom PHP

Database: MySQL

Mobile: Android & iOS

Web API: NodeJS Database API on top of WordPress

Design UI: Design Services on Photoshop and Axure

Key points in development

Accessibility: Blind people needed to be able to use the website and hence every element is designed to have an alternate text that reads out loud on mouse over by a blind user. The user can also listen to any article by clicking on the ‘Lyssna’ tab placed with each article.

Custom Search: Due to expected lack of tech savviness of disabled users and high categorization of news in the website, the search was custom built from scratch to search for and return content as envisioned by the client & expected by the user.

Migrating & merging legacy content: Original 8Sidor website & its political news section ‘Alla Valjare’ was built on separate platforms Umbraco & WordPress respectively. We had to migrate & merge both websites and remove duplicate content which they had published on both website.

Huge Database: When both the clients websites were merged together, the database turned out to be huge. Since WordPress is not optimized to handle more than 10000 rows and our database was approx. 30000 rows, we did extensive optimization on WordPress’s core as well as on frontend JavaScript to make the website as nimble and fast as possible.

Personalized Section: The users of the website will be able to subscribe to PDFs & SWFs of print edition 8Sidor newspaper. Customized login & user management was built to cater to specific needs of the client and serve the customers as per the category of their subscriptions.

Propellerhead

Sweden

Propellerhead

Sweden

Overview

Propellerhead is a Swedish company developing cutting edge audio tools and solutions for enthusiasts as well as beginners interested in advanced audio solutions. Propellerhead also provides a platform for users to create and publish their music on Propellerhead’s website for collaboration as well as maintaining an online library.

Propellerhead website also sports a shopping section where users can buy hardware and software solutions provided by Propellerhead. The users will be able to maintain an account and track the lifecycle of their purchased item directly through the website for facilities such as support, warranty and upgradation.

Project Brief

Propellerheads is a website built on Django platform. The Content Management System was custom built on Django to cater to very specific needs of the client. We also had to integrate the website with their existing systems to facilitate online purchase and subscriptions of their products. Main features of the website are:

Each page is written as a template to facilitate the client with easily creating new pages and modify existing ones.

Every element is written as separate module so that the client can pick and arrange various elements to create a new webpage.

In line music player was integrated to provide the users with seamless experience of listening to music.

Tech Stack

THE ONLINE CONSUMER EXPERIENCE HAS BECOME A DEFINING MOMENT IN BUSINESS. COMPANIES MUST ENGAGE AND RETAIN THE MOST DEMANDING ONLINE USERS.

Our Strategy & Design Service is focused on building innovative, scalable and appealing Internet-based solutions that enhance the end-user’s online experience. By combining our engineering capabilities with our experience in innovation and architecture design, we are able to produce scalable and appealing business-to-consumer online destinations for global audiences, enabling end-users to both interact and transact better, faster and more intuitively.

Offerings

User Experience and User Interface Design

User experience (or UX) design is dedicated to giving you the best possible experience when using websites, software and all kinds of services.
The user experience is the impression the user has about the product or service during and after they have interacted with it. Here at mDrift we create exceptional user experiences by applying information architecture, interaction design, user interface design and visual design approaches and methods. Design itself is central to creating excellent user experiences.

User interface design

UID, UI design – no matter what you call it - user interface is the gateway through which users interact with your products or services. Online or offline, it’s the same idea. There’s a saying that a well-designed user interface will pay for itself and more; significantly more.

We take into account best practices across a variety of fields like visual design, usability, information architecture and interaction design to create excellent user interfaces. Our interfaces are both pleasurable for users and give you competitive advantage.

Information architecture

People must be able to find the information they are looking for – fast. That means your website or application must be organised so it’s consistent, intuitive and reflects your organisation’s goals. Our information architects are trained in organising information into logical structures that make sense specifically to your users.

This requires knowledge of information science, psychology and business, among other areas. These skills are quite separate from the core skills that visual designers and developers usually have.

Interaction design

Anything people do with your application or website is an “interaction”.
When people are buying things from your web shop, what’s the next step after adding their item to their cart? If an error occurs, will everything they have done be deleted? We identify, evaluate and design the interactions people might have with your products and services online.

We orchestrate those interactions and make sure that they are consistent with your site’s information architecture, your business goals and your customers’ expectations. It’s a magical synergy of form, function and interaction.

Visual design

Visual design is the “look” in the “look and feel” but it’s also much more. Visual design gives a face to your brand, builds an emotional connection and ensures the proper communication of ideas and functions. Our visual designers have a broad understanding of business environments. Their main task is to listen to your needs and come up with creative solutions; it’s all about communication.

Visual design is the agent that establishes a clear understanding of the purpose and meaning of your solution. We design and create websites and web apps, mobile and tablet apps, corporate identities and icons to name but a few.

Usability testing and research

Usability studies serve several purposes, the most important of which is to evaluate or measure your users’ overall experience and satisfaction levels. The essence of usability testing and user research is to test-drive your solution and provide you with feedback before you hit the market. We also conduct usability evaluations based on a number of sources. Our experts will evaluate the overall experience of using your website, mobile application or service, drawing on their expertise and practical experience as well as established heuristics for different systems.

Strategy, consulting and education

Listening to users, markets and opinion-makers, critically evaluating current trends, identifying future trends and mapping opportunities are the key elements of every strategy developed by our team. We are experts in areas of product and service development and strategy, design strategy and social media and content strategy. We explore trends, read and contribute to industry-relevant research and think tanks. Our strategies are here to help you harness opportunities, guide your business in the right direction, grow your profits and increase brand loyalty.

Product and design strategy

As Bloomberg’s BusinessWeek puts it, “design can provide a tactical advantage by delivering a powerful brand message”. We know that design and research are used to identify new opportunities, to generate ideas for new products and services and to fuel innovation. They drive and demonstrate a company’s vision and improve its market position.

We create design strategies, a design language and guidelines that will ensure your success. We get to know your culture and expectations and with your business goals firmly in mind, we deliver a highly tailored product and design strategy. One that works.

Content strategy

Your website serves an important purpose: putting across vital information to your visitors. Most often, that information is in the form of written content.

Logically, you want that content to work for you, and to work hard. You need it to bring you business; it’s important that it reflects well on you. It must be up-to-date, professional, and encourage people to read – and buy – your products and services. We’ll work with you to identify your audience and define the key messages you should be sending them. Together we’ll create an infrastructure and long-term communications timetable that will get results.

Social media strategy

Here are the facts: over 1.2 billion people are on Facebook, over 500 million on Twitter. More than 48 hours’ worth of video is uploaded on YouTube every minute, and about 300 million users are on LinkedIn. People like talking and sharing their experiences online. They are looking for ways to share their feelings, ideas and suggestions about you, your products and services.

As The mDrift Manifesto states “Markets are conversations”. We will create a social media strategy that will get you into that conversation, track it, report it and get the most out of it. Let’s talk to your users!

As a leading product design firm, we help Fortune 50 companies strategically develop new products from ideation to realization as manufacture-ready designs. With over 25 years’ experience, our passion is to create compelling designs that improve life and function beautifully for the people who use them.

Leveraging ideation, design trend analysis, materials knowledge, modeling and prototyping, we draw on decades of experience to forge innovative solutions to your most complex challenges as part of our integrated new product development process.

At Kaleidoscope, we offer the expertise, vision and experience to turn product development challenges into opportunities. Our dynamic team of researchers, designers and engineers brings your project into focus.

Managed services let you offload specific IT operations to a service provider, known in tech parlance as a Managed Services Provider. The managed service provider assumes ongoing responsibility for monitoring, managing and/or problem resolution for selected IT systems and functions on your behalf.

We are committed to working with your stakeholders to design transformative solutions that address your financial, operational, and environmental goals while allowing you to focus on the essentials of your business. With our service and support, we ensure you’ll get the most out of your investment.

Cloud & Managed Hosting

Secure multi-tenant cloud & dedicated private cloud solutions

Cloud and Managed Hosting solutions from mDrift empower our clients to improve availability, performance and reliability of the critical infrastructure and applications that drive their business and power their bottom line. Our top tier facilities adhere to ITIL best practices and hold SSAE16 certifications enabling our clients to meet the most stringent of data security and compliance regulations including PCI DSS and HIPAA, among others.

Disaster Recovery & Backup

Ensure your business infrastructure and critical systems are protected from malicious activity or unplanned downtime through effective and proven data backup and data recovery solutions. And now you can take advantage of the public cloud option for data backup to Microsoft Azure.

Remote Monitoring & Management

Remote Managed IT Services from OnX provides access to traditional data center and infrastructure skill sets to support your current or planned environment in your existing facility or in a remote, 3rd party facility.

OnX Remote IT Services allows you to retain your existing colocation investments in infrastructure and at the same time receive industry leading monitoring, alerting, management of your critical servers and operating systems, from a centralized remote facility.

Collaboration & Communication

Managed Email and SharePoint solutions

A virtual team is a collection of independently employed individuals who work together to provide business solutions to external clients. For startups, using virtual teams can be a way to provide top products and services while remaining flexible for customers and responsive to their needs. Yet startups need to be aware of the benefits and disadvantages of virtual teams.

The context for virtual teams

Organizations that deliver the services of a virtual team hire the most suitably qualified people available, with varying levels and areas of experience. This framework can be complemented by hiring virtual employees in multiple geographic locations to support customers from different regions.

A virtual team will typically include members who work primarily from home and may have a small centralized office where meetings and group projects can be planned and implemented.

In the area of human resources, there are many disciplines that require specific skills, training and experience, including:

Often, the challenge for startups and other small companies is having the resources to hire an employee with as much of this expertise as possible at the lowest possible investment. Finding all of this in one individual at the experience level required can be daunting. The virtual team can provide the answer in fields such as human resources, finance and marketing.

Virtual teams: Benefits

Virtual teams are growing in popularity for a number of reasons, including the following benefits:

Affordability: With virtual teams, companies pay:

Only for the level of support that they require

Much lower costs than they would for professional consulting organizations and headhunters that have large infrastructures and professional fees to support

Flexible support: Companies identify the requirements (e.g., junior recruiter, senior compensation analyst) and virtual teams fill the need. Companies can set the length of the service according to their needs

Full suite of services: Virtual teams offer access to multiple disciplines in different geographic regions

SUCCESSFUL PRODUCTS NEED DISRUPTIVE THINKING

We are passionate technologists and out of box thinkers. We provide software delivery, pioneering tools and consulting for building successful products.

Overview

We are good in combining ideas , mix and match for innovation

Hiring rare talents for Product Engineering is a tough task

We have seen developers - Product Engineers unlike professional developers needs a fantastic quality - think out of box!

We build teams for you...

Advantages

You get a team locked for your startup / Enterprise Product from scratch

With our years of experience in building successful products, we know whom to pick and whom to spare. We have dealt with resource markets - We have gone through these stages

You can retain the team or leave them after use

We make sure the core team from mDrift is involved in every critical decisions.

We take care of complete lifecycle of the product.

We plan well in advance - we have an excellent Product Management team, and are well aware of the latest technology and design trends in the market

Offerings

Enterprise Web

Ecommerce Solution

ETL Solution

Web Backends

Custom ERP or LMS System

Extended Maintenance & Support

Application Audit & Testing

Application Reengineering and Redevelopment

Solution Architecture

Wireframe UI/UX/ Consumer Experience

Dedicated Engineering Team

How we do it

We ideate

We brainstorm and try to kill the idea!

If the idea survives we fix the idea ( Till this stage, it is free!)

We talk commercials with mDrift's core team/ Equity.

We form multi-disciplinary startup team, from premier institutions and prodigy programmers ( from market)

We help you fix a tech stack

We build an initial prototype and you approve or reject it.

If it satisfies you, we refine the product

We refine it, refine it and refine - we may rewrite the modules too or rebuild, till all of us are satisfied.

Product launch and Continued support.

Build a team for you till you scale.

With some, in fact, most of the critical business processes of practically every enterprise shifting to web, companies the world over are taking initiatives and creating their own enterprise web solutions. Whether it is database management, supply chain management, ERP, E-commerce, CMS, CRM or even beyond, the requirement to associate with the world wide web is becoming all but prevalent. In order to make their web presence thrive and survive, businesses look for latest, leading-edge technology whose implementation remains:

Industries Served

Build Your Product. Win Customers. Validate Your Market

Learn the art of the Product-Market fit process in an Intensive Six Months Program.

A Product is more than mere code. It has to solve a real problem - more than that, it has to solve it elegantly. We understand that first-time entrepreneurs struggle in identifying their target customers, and in that key set of features which will make their product click. We work with Entrepreneurs through the customer development process in making the connect between customers - problems and in shaping of the product being built. We help shape a venture, through the continuous learning and feedback process, and through pivots (if needed) to arrive at the birth of a startup.

Our Team, is Your Team

The aim of the Incubator program is to help transform your prototype and product vision into a viable product with Product-Market validation, over a 6 month period. The teams go through a cycle of Prototype Building, Customer Development, Product-Market Fit Process and to the beginnings of the Business Model Cycle.

6 Months Hands-on Mentorship

The program gives enough time for your team to build the first version of the product and get the market validation done. By the end of it, you’ll be ready with a product that people want, and are willing to pay money for. The teams will have their first checkpoint in Month 3 to deliver a Minimum Viable Product, Followed by Customer validation and the remainder of time (approx 2 months) to Pivot accordingly.

Professional Guidance

For the duration of the Program, mentors of The Startup Centre will be available to interact with on a regular basis to guide you. Teams will have regular access to our extensive network of business and technology experts, many of whom are experienced entrepreneurs in the Indian Landscape. Our Mentor Base is extensive, so we are confident that we can connect you with an expert for any specific needs, be it marketing, finance, Strategy or product development-related.

The Stack

An Average Product Startup goes through 2.5 iterations before they get their product right. How do we cut down on that iteration as much as possible? The right tools. Through our partnerships we are able to provide the teams, the best stack that is out there, to ensure that they are equipped to churn out the first product. Some of our Partners also offer significant credits on their stacks - the good news, the choice is upto you.

The Accelerator Bee-line

The Startup Centre runs an Accelerator Program that follows the Resident Program in terms of the stage of the Venture. As such, the teams that will be graduating out of the Resident Program, will get a wild-card entry into being part of the Accelerator, should the team wish to be. We also have a history of some of the graduating teams being sought out by the Y Combinators, 500 Startups and Techstars of the World.

The Collaborative Work Environment

The Centre was designed in a way to leverage an open floor - by learning from each other and being able to pivot and build quickly. That has worked phenomenally well for us. We provide the furnished office space and bandwidth (internet and guidance) for the duration of the program. Teams make friends - sometimes for life - during this time. Who said, you have to build a startup alone?

Access to the Community

We are Based out of Chennai, an Ecosystem which is Vibrant in terms of Entrepreneurial, Technical and Design Talent. Don't believe us? You should absolutely attend one of the many meetings that happen atleast once a month. We understand that it takes a village to raise a Child - as well as a startup. Being at The Startup Centre is a way of being plugged in.

Access to Customers

There is only one way to figure the validity of the proposition that you as a startup offer - talking to actual customers. Part of the Program is a structured way of identifying and talking to customers to validate your offering, and align yourself to make the solution elegant and easy to use. We believe in Customers First, Everything else Second - and we help you make that a priority.

Visibility to the Media and Investors

At the end of the day every startup has to grow its identity and our network of Media Partners and Investment community help us get some of our promising startups an early access to be discovered. It doesn't guarantee success, but it gives you a milestone to aim for, in terms of building an enterprise. Just one more step in the right direction.

DESIGN IS THE CORNERSTONE OF ANY SUSTAINABLE STRATEGY. DESIGN IS THE BALANCE BETWEEN FORM, FUNCTION AND EMOTION

The Front End Engineering team focuses on bringing quality, design, strategy, and production to worldwide digital challenges.

We base the definition of our design on evidence of consumer behavior and observation of market trends. We create solid and relevant solutions that appeal to both users and businesses.

Selecting the right tools

Selecting the right tools for the job is fundamental to any kind of project. Front-end developers have a range of tools and frameworks (methods) to help them complete projects.
Due to the size and scope of modern websites, it’s unusual that just one front-end developer will work on a project - so managing code in terms of who wrote it, what it does, when was it added, why was it added, and which files changed is a common headache for developers.
Modern version control systems ease these headaches. We use Git as it provides a timeline of all changes made to code. It helps developers collaborate, find errors and check the quality of the code.

Initial Stages

In layout and appearance, the web isn’t too dissimilar to the pages of a magazine - and you wouldn’t expect to read a magazine that looks like a teenager’s rushed homework. Wireframes and designs serve as the blueprints that can be worked from, and then front-end developers build these designs into interactive pages with a great user experience (UX).

Like when architects pass over a blueprint to a builder, developers will plan and consider the technical reality of a project, and what tools they will select for the job. Front-end developers also need dimensions, specifications and assets (materials) to work from.

Build

This is the stage where a front-end developer uses a design for reference and begins to lay the bricks of a website. The time this takes can vary, depending on the scope and size of the project, so the more functions, unique pages, and other features, the longer it is likely to take.

We use the following tools to make our workflows as efficient and high-quality as possible:
Task runners - like Gulp - that automate repetitive code tasks and reduce the risk of human error
blog-post-tools-01.png
CSS preproccessors - like Sass - speed up the styling of HTML, it's the code equivalent of using a roller over a bristle paintbrush!
blog-post-tools-02.png
And various frameworks, particularly for JavaScript, depending on what is needed for the job. We use: jQuery, Node.js, Angular and even React.
blog-post-tools-03.png

Refine & Review

Even the best front-end developer in the world needs to take the time to refine their work and review what they’ve already coded. This is especially important in responsive web design, and testing is required to review code when it’s rendered on different devices.

Another reason to review is to support legacy internet browsers (such as Internet Explorer 9) where modern web technologies aren’t as well supported. Using a process called graceful degradation, front-end developers make pages look as good as they can on these older browsers. We use Browserstack to test our work on a whole range of browsers, operating systems and mobile devices.

Linting also helps us review code. Linters highlight sections of code that may need refactoring to work more effectively, like many things there’s no ‘right’ and ‘wrong’ when formatting code, but it’s important that it is consistent. We prefer to use Airbnb’s linter, which outlines best practice for JS, but there are a wide variety of linters available.

Server Side

When facing frontend development, we start with the browser and the capabilities it offers. But with backend development, the field is much bigger.

First, we will need to think about the language, because that will determine the operating system to install in the server. For example, choosing ASP.NET will make Windows Server mandatory, although there are alternatives like Mono that would let us work with Linux, but it’s not as complete as Windows libraries. Any other language will let us work with Linux or Windows, although Linux is preferred because of its good packaging system.

ASP.NET is not a language though, but a framework. It can work with Visual Basic, C# and J#.

Using a web framework is a good decision, because it solves many web development problems and provides a good file structure to work with. This accelerates a lot our work.

Languages and frameworks

PHP

PHP is maybe the most popular language for web development. It’s pre-installed in almost all hosting services. It has a syntax very similar to C and Java, so coming from these languages is a plus in familiarity (it’s my case).

It started as a procedural language, making a transition to object orientation in version 4, and finally being a true object oriented language in version 5. Version 7 bring more features to the language, and makes great improvements to speed and memory consumption.

Facebook is built with PHP, although they wrote some libraries and compilers to optimize the speed.

The classic and popular frameworks for PHP are Zend Framework and Symfony. I have been using symfony 1.1, symfony 1.4 and Symfony2 for several projects, it was a very good tool.

Nowadays there are many good alternatives, such as Yii and Laravel.

Python

Python is a language that uses a simpler syntax than PHP. It’s designed to have a very readable code, and for that reason is very recommended to learn programming.

It’s well tested, Google chose it to develop their services, and that’s a good thing.

I haven’t used this language for any web application, but I used it to develop a tetris-clone game using the library Pygame.

The most popular framework for Python is Django.

Ruby

Ruby is designed to be a fun language. As the slogan says: a programmer’s best friend. It has a focus on simplicity and productivity with an elegant syntax.
In Ruby everything is an object, and that’s interesting because it encourages to the programmer to think this way when developing.
But, in my opinion, the most amazing thing about Ruby is the community. There is a huge amount of libraries (called gems) that you can use in your projects, making development very fast. The popular gems (which are many and varied) are well maintained and constantly improved.
Twitter was built using Ruby, although now it’s rewritten in Java.
The most popular framework for Ruby is, by far, Ruby on Rails, but for very small projects there is a popular micro-framework: Sinatra.
Micro-frameworks are designed for small applications, having few files and being easier to maintain than (mis) using a full framework.

Database management systems (DBMS)

For small or medium web applications, the backend developer is responsible to install, use and optimize the database. For bigger projects there is a dedicated role: the database administrator (DBA).
MySQL is the most popular DBMS for websites. It started as a stripped-down tool bringing more speed, although it was adding features until being a complete and fast solution. It was purchased by Oracle, although there is a fork to keep the project open source called MariaDB.

Classic systems such as SQL Server, Oracle or DB2 are not so popular among web developers, maybe more for ASP.NET in the case of SQL Server.

In the Ruby on Rails community there is a popular alternative: PostgreSQL. It’s a very powerful and open-source DBMS having interesting additional features such as full text search and a messaging system. It also has useful data types which integrate with Rails very well. This DBMS is by far my favorite.

Caching and key-value stores

It’s good to avoid premature optimization, so the application can be done as soon as possible, but as it gets used by more users, we will need to make optimizations to our code.

When more optimizations are not possible or viable we can use caching. Caching works storing some piece of the application statically so it can be served without processing, being much faster. It can be stored in files, in a database or, ideally, in memory. If it’s small, it’s preferable to use memory, and for that use the king is Memcached. It stores information in the form of a key-value, hence the name of key-value store. It works like a dictionary.

The downside is when the process halts or gets killed. Our caching would need to be created from scratch again. An alternative to avoid that is Redis, which works in a very similar way but it copies the information to disk so it can be reestablished in case the process is restarted.

Search engines

When it comes to search the information efficiently to avoid slow down the server, we will need a search engine. This tool analyzes the information that has to be available to search, and it stores it in files with an index to locate it as fast as possible.

There are many approaches to index the information. We can for example index it as soon as it’s generated, or do it programmatically at given times. It depends on the project we are working on to choose one or the other.

The classic search engine is Apache Lucene. Besides indexing information, it can also index documents like PDFs. It can be used directly, but there are other tools that are based on it providing more features, for example Apache Solr and Elasticsearch.

Another popular alternative is Sphinx.

Queue systems

Imagine that your application has to process something after an action initiated by the user. For example, the user signs up, and the application needs to send a confirmation email. Sending an email could last some seconds, so having the user to wait until it’s sent is not a good idea. Now imagine there are lots of sign ups sending many emails. The problem is even bigger.

The best approach to improve usability is to queue this task so it can be done later on, and provide immediate feedback to the user. For example you could display a page saying that a confirmation email has been sent (although it can take some time to arrive). This is known as an asynchronous task.

There are lots of queue systems that integrate very well with Ruby on Rails. I started working with Delayed::Job. It’s very complete and it needs a database to work, but it lacks a graphical interface to see the queue and failing tasks, because tasks could fail!

I like to use Sidekiq, by Mike Perham. It requires Redis to work, and provides a graphical interface to control everything. It can even show which tasks failed, and how many attempts were tried for each one. It uses threaded workers to be more memory efficient and have better performance.

Because processing many tasks could make these systems to use much memory or CPU, it’s a good idea to use a monitoring tool. God and monit are classic tools, but Sidekiq’s author wrote Inspeqtor, a very interesting alternative that works nicely with Sidekiq.

Other tools

There are many other tools the backend developer will have to deal with. For example it’s very common that users may upload a photo. While that can be done using just Rails, it’s better to use a tool providing a file structure and code modularization. I like to use Carrierwave, but there are other alternatives such as Paperclip or Refile. Carrierwave lets you write a class for every item in your application, so it keeps the encapsulation principle of object oriented programming.

It’s also very common to build an administration interface, so an administrator could upload a CSV file with information that needs to be added to the database. In this case we could use our uploading tool, and then use the CSV standard library that comes with Ruby, although there are good alternatives like SmarterCSV.

Mobile

As a leading mobile application development company, Appnovation has extensive experience in creating high performance, feature-packed native mobile applications for all the major mobile platforms including iOS, Android, BlackBerry OS andWindows Mobile. Additionally, as experts at HTML5 development, Appnovation can also build cross-platform mobile applications that will work on any device or platform. Companies and organizations choosing Appnovation for their custom mobile application development needs can be assured that their final deliverable, no matter the technology its built on, will be secure, scaleable and sustainable in whatever environment its hosted.

Using an agile development methodology to deliver our mobile app development projects, Appnovation expert mobile app developers can create the right app that will meet your business, industry and/or vertical needs. We offer a proven, highly flexible engagement model that starts with a comprehensive evaluation of your business and IT requirements to ensure that ultimately the right mobile solution will delivered both quickly and cost-effectively to meet your goals and deadlines. Whether you need to hire a mobile app developer to augment your current team, contract subject matter experts to help with a certain aspect of your project such as business analysis, custom UX/UI design, code development, project management and/or quality assurance, OR looking for a complete end-to-end or mobile app development solution to be delivered, we can meet your needs.

Data Science - Services

From Data to Knowledge Driven Applications
Big Data has quickly become the buzzword in the business world, entrapping everyone from start-ups to
well-established businesses and everyone else in between. The problem is, while Big Data can provide companies with
indispensable knowledge detailing both current and future customer sentiment, as well as specific market trends, many
businesses don’t know how to translate their mountain of data into accessible business strategy.
If this sounds all too familiar, Impetus is here to help. Our team of well-trained, experienced Data Scientists are experts
in solving business problems utilizing major data science work benches, and can help you take control of your Big Data
quickly and cost-effectively.
Service Offerings
Our expertise in Data Science can help you harness your Big Data and turn it into real business value. Some of our key services include:

Tools and Technologies

In order to help you extract the most information from your Big Data, Impetus has generated a vast array of data
science and visualization tools and technologies available at your disposal.

R as a basic workbench for discovering patterns and developing algorithms
– Weka, Octave, and MADlib are other tools we frequently use
• Mahout for large scale distributed and parallel implementations
• GGobi is used for exploratory analysis

BI and Visualization Tools:
• Intellicus, Pentaho, Datameer, and Tableau Solutions
Impetus has extensive experience with a variety of solutions you can employ to best fit your Data Science strategy.
Some of these include:
• Recommender Systems allow you to predict consumer preference for your product, so you can suggest similar or related products
• Predictive Analytics platforms allow you to generate patterns from your company’s historical data to make predictions about future business opportunities
• Sentiment Analysis utilizes natural language processing to determine the polarity of your individual consumers (i.e. happy, sad)
• Topic Identification employs a statistical model to determine the main idea, or topic(s) in a given data set
• Database Marketing uses statistical platforms to access and interpret information from your data warehouses to best predict customer behavior; some of these techniques include:
– Churn analysis
– Upselling
– Cross selling
• Data Stream Analytics engines allow you to handle your data in near real- time, including:
– Near real-time analytics
– Near real-time error detection

How?

Our primary focus is to help our clients stay ahead of the curve when it comes to their biggest challenge : Change.

One for all

The best technology consulting firms understand the synergy between the journey and the destination.We develop concepts and solutions for the entire organization, for its divisions, and for those in charge of strategy and innovation, organization and processes.

All for one

mDrift lives at the nexus of innovation, creativity and technology. We specialize in providing clients with a comprehensive technical approach that produces actionable strategies and practical solutions. We are committed to achieving results that surpass our clients’ expectations.

About

These are most assuredly exciting times for multiple industries such as media, technology, government, entertainment and information technology. New technologies, platforms, distribution models, marketplaces, editorial models and advertising formats are creating growth opportunities. Most often event the experience companies are not able to capture these opportunities due to lack of critical thinking and adaptation. As the business environment gets more competitive, there is a critical need for new strategies and approaches.

That’s where we come in.

Leading companies employ us to analyse their existing data and find ways to grow their business, take the right advantage of digital opportunities emerging in the market and to get ahead of the trends that are shaping the market.

We also act as advisors for a number of early- mid-stage startups. This helps mDrift provide an environment for highly creative and engineering minds of our society to have real world experience and challenges while our clients benefit from our real-world collaboration with entrepreneurs and tech innovators.

Our clients demand innovative thoughts, state of the art delivery, deep functional expertise and original insights. The kind of work we accept and execute requires a different background than that of traditional consulting firms. Our clients like that we are different. If that sounds like you, get in touch.

It’s not about the organisation chart

At mDrift, you will be welcomed into a highly collaborative and non-hierarchical culture where teamwork is the primary pillar upon which our company is built. We are committed to guiding and developing our team members. As a young company, we will be able to offer a career developement track seldom established organisations will be able to provide.

We focus on building a team of not only individuals from different backgrounds but also varied outlooks. Inspite of all these, the most rewarding part of your day at mDrift would be being able to fully engage with challenging projects that provide measurable results everyday.

Capabilities

Breakout growth strategy

Research, Identify and Target new opportunities in the market, chart out new strategy and create road map for sustainable growth. mDrift has worked with clients to design strategies for entire companies as well as individual business units.

Value capture and due-diligence for principal investors

Once we have optimised the business for cost, we target to extract value by growing the existing revenue streams and acquired customers. We help investors and management teams leverage existing products and services and transform them into the new digital products and services ready for an exploding digital audience.

We do not just hand over a plan and look away. We do our due diligence. mDrift will provide continuous and periodic due diligence reports on how the targets are faring and how the company is positioned for growth against the likely evolution of their industry sector.

Digital strategy as business strategy: reinvention at scale

Formulate strategies and target opportunities to help established companies in creating fresh engaging user experiences, products and services that utilise new emerging revenue streams and customers.

Create new media products and businesses – inside of large companies

Take advantage of the native capabilities of modern devices and platforms to redefine content, editorial and storytelling for a new generation of audiences. Identify opportunities to create new businesses that take advantage of a company’s assets and capabilities.

Difference

As history has taught us, successful companies have had to reinvent themselves for years ahead, and now we have reinvented the consulting industry for the digital age.

At mDrift, we are a group of professionals native to the digital world - experienced solution architects, a large ecosystem of industry experts, strategists and innovators.

• Team with proven business track records, startup experience and management consulting backgrounds.
• Expert knowledge, connectivity and credibility in industries such as media, information technology and entertainment.
• Highly passionate about producing creative and innovative products.
• Expertise and credibility with marketing agencies, advertising platforms and ad industry decision makers.
• We take pride in inducing startup culture into a more established culture.

Our strategies and plans are practical implementation of targets deeply rooted in the reality of how market and industry will respond to media, information and technology in the future.

DevOps

Dev ops is at the forefront of mDrift's delivery model to ensure the effortless communication between developers and project managers.

What

It helps us serve the needs of mDrift and our clients simultaneously while maintaining a dynamic, result oriented project management pace.

Why

Dev ops enables mDrift to maintain a faster turn around time while ensuring quality and reliability.

Focused, Reliable Delivery Framework with mDrift DevOps Practices

DevOps is to change and improve the relationship by advocating better communication and collaboration between the client and the vendor. Devops facilitates efficient communication as well as synchronises operations in product engineering by filling the traditional void in terms of people, systems, processes and tools. Our model helps in faster and bug free releases enabling close collaboration , smooth workflow and continuous feedbacks.

Our DevOps Practices can be subdivided into following group of synchronous tools used for delivery:

Continuous Integration & Continuous Delivery

Tools

Accelerate release through automated testing and rigorous workflows for multiple simultaneous integrations. This helps clients achieve faster go to market and quality products all the while saving cost of development.

• Jenkins - A open source CI server that has been turned into a continuous delivery hub for any project by mDrift.

• Docker - A software containerization tool used to deploy applications across multiple servers regardless of its environment

• Chef.io - Chef works by creating recipes (called cookbooks) for deploying cloud and traditional infrastructure. It can handle provisioning by calling Linux package managers as part of a cookbook. mDrift uses Chef to streamline company’s servers and cloud based plaftforms such as AWS, Azure, Google Cloud etc.

• Puppet - Puppet is an open-source configuration management tool for a standard way of delivering and operating software.

• GitHub - GitHub is a web-based Git repository hosting service.

• JIRA - Project management tool used for streamlining functional and technical teams across the scope of the project.

• Slack - Team communication software for syncing up of team members and clients on latest developments and news about the project

Working With Us

We can assist you from planning to implementing fully-automated build compatible with various platforms, different sets of unit tests, user access tests, and debugging. Since time is of the essence, we ensure that release is not delayed from a pre-determined schedule. Working with us could free you from dealing with tools, servers, and other components besides overseeing development pipeline and preserving version control of your application.

Server Orchestration

To get just about any application up and running to support, devops needs to be able to configure multiple “boxes” such as Application servers, web servers, load balancers, proxies and database servers. One of the key value propositions of a devops approach to operations is that it can reduce the time it takes to get applications to market by getting them up and running in production faster. As we move into the age of Internet of Things, this is going to be highly important as the “Things” need to be talking to each other and applications on the backside

Due to such high levels of demand and speed of delivery it is important to ensure that objectives are not achieved at the cost of accuracy. We’re encouraged, then, to automate tasks and orchestrate processes to achieve that speed. The side effect of codification of tasks is higher accuracy (aka fewer mistakes).

System Support

Remote Monitoring and Management

We strongly believe in continuous monitoring and periodic maintenance to detect and squash problems even before the occur.Tools such as Nagios are used in the process of setting up a complete package for you to monitor network status, server, site availability and performance of application. These tools notify us with warnings when functions do not adhere to established parameters.

Technical Support

Web applications require periodic attention and fine tuning to ensure seamless performance. mDrift provides you with varied types of support plans to suit your needs, let it be Full cover support where a team is dedicated for your application or A La Carte where you, the client, can pick and choose the support types you would be requiring. We provide the following support activities:

• Upgrade installed software

• Install and configure firewall

• Perform periodic security audits

• Install SSL security certificates

• Monitor bandwidths for abnormal traffic

• Optimize system performance

• Patch up security holes

• Recover lost data

• Perform shell scripting for batch processing

• Server backup snapshot and verification

We Monitor

• HTTP: Web Server

• SMTP: Outgoing Email Server

• FTP: File Transfer Protocol Server

• DNS: Domain Name Server

• Custom TCP Ports

• POP3: Email Server

Security

Maintaining your software at the latest update and security patch is one of the single biggest precaution you can take for any application. Software updates can range from critical vulnerability patches to minor bug fixes.

We go through the following steps for managing and securing the server.

Automatic Security Updates

Automatic security updates will be reviewed and pushed to server on a regular basis. We will make sure that appropriate security patches be applied to application to ensure the health of the application.

Add a Limited User Account

Tighten SSH Access

Usually password based authentication is implemented to connect via SSH. A cryptographic key-pair would be a highly efficient and secure method because a private key takes the place of a password, which is much more difficult hack using brute-force.

Use Fail2Ban for SSH Login Protection

We highly recommend Fail2Ban, which is an application that blocks IP addresses from logging into your server if too many failed login attempts are made. Legitimate logins usually get authenticated within 2 to 3 tries and in cases where SSH key has been implemented, the login attempt should take no more than 1 try. A server being spammed with unsuccessful logins indicates attempted malicious access.

Remove Unused Network-Facing Services

Network facing services, some of which are open by default and keeps listening to incoming connectors from the internet. Such open services leave wider area for potential malicious interventions to target. Such services that are not required needs to be removed from the system.

You want to imagine, create, develop connected products or services for yourcustomers?