How Nomanini scaled from 1 release per month to 6 releases per day with GCP

Today’s guest post comes from Dale Humby, CTO of Nomanini, an enterprise payments platform provider based in South Africa that enables transactions in the cash-based retail sector. With Google Cloud Platform, Nomanini has seen a 20 percent boost in productivity since developers can focus on rolling out new features instead of focusing on infrastructure. Read how Humby and his team are enabling the delivery of essential services in far-flung locations.

About 50 percent of Africa’s population, or half a billion people, live on less than $1 per day. Many people don't have reliable access to electricity and telecommunications. Nomanini and our partners are helping change this by providing access to these essential services. Our network of merchants, equipped with point of sale terminals and a financial backend powered by Google Cloud Platform, allows us to distribute pre-paid airtime and electricity to far-flung, rural villages in an affordable and reliable way.
Vendors in Maputo


Our custom built, ruggedized point of sale terminals are known for their speed and reliability  and our financial processing backend has to be just as reliable. Merchants use Nomanini’s platform to make a living by getting commissions from their sales. Even a single incorrect sale or a few minutes of downtime costs merchants customers and money.

Many people choose Google App Engine because it automatically scales to hundreds of servers and beyond. While this is important to us as we grow exponentially, we initially chose App Engine for its reliability: Downtime puts merchants’ livelihoods at risk. We make extensive use of Task Queues for all processing, and Datastore, GCP’s high-availability NoSQL database, as our financial transaction store. In addition, all data is streamed in real-time to BigQuery for customer analytics and reporting. Nightly reconciliation jobs export data from Datastore to Google Cloud Storage for long-term backup.

The financial technology space is highly competitive. We have to continually improve our product or get left behind. Over the past four years Nomanini has built an engineering process that allows us to continually innovate, while simultaneously ensuring our product is (almost) bug free. Our team has doubled from three developers to six, while the number of deployments to production has increased from one per month to more than six per day  representing an increase in development velocity of 120 times. To do this we’ve been using Kanban, a production methodology developed by Toyota, and more recently adopted by the software industry as a way to remain agile.
Team size and deploys to production per month since 2011





By continually improving our development process, we can build better products for our customers and provide updates that help them grow their own returns, like rolling out firmware with new products for our clients to sell and improving battery life.



Once code for the embedded system has been committed, it’s pushed to our cloud-hosted Mercurial source code repository. The continuous integration server checks out the code, builds all the artifacts, including executable binaries for the point of sale terminals, and uploads them to Google Cloud Storage. We run a service on App Engine that manages our build pipeline, tracking each commit through CI and test, Alpha, Beta and Stable phases.
Release pipeline: New versions in CI at top, stable version in production below





Production terminals are subscribed to either the Beta or Stable channels, and when a new version of the application is available they download the binaries directly from Cloud Storage over the GSM network, then install and upgrade automatically. Using Cloud Storage means we don’t have to manage our own FTP or HTTP file server, reducing operational complexity and cost and increasing reliability of the upgrade service.

Terminals collect diagnostic information and stream it to BigQuery. We run statistical tests comparing metrics between versions of code, and have automated alerts when code in Beta deviates significantly from the Stable version, indicating a potential issue with the new version. (For more details, I’ve written a blog post on Monitoring distributed systems with BigQuery and R)

We make extensive use of Google Cloud Monitoring to view performance and business metrics on TV’s around the office, and receive SMS and email alerts if Cloud Monitoring detects issues. All server logs are streamed to BigQuery where we can investigate issues, store logs for auditing and run analyses, for example, to highlight areas for performance improvement.


Cloud Platform offers a cohesive set of services that would be difficult to build with our small team, and almost impossible to host as reliably and securely as Google. By building on top of Cloud Platform, we can release features for production within a few hours of completing development, delighting our customers and giving us a significant competitive advantage. But what truly drives our product innovation is the knowledge that the better our products, the easier it is for people in remote rural villages to switch the lights on or get in touch with a loved one who’s far away.

To learn more about how Nomanini uses GCP, read our case study.

Posted by Dale Humby, CTO, Nomanini

Thank you for reaching out to us. We are happy to receive your opinion and request. If you need advert or sponsored post, We’re excited you’re considering advertising or sponsoring a post on our blog. Your support is what keeps us going. With the current trend, it’s very obvious content marketing is the way to go. Banner advertising and trying to get customers through Google Adwords may get you customers but it has been proven beyond doubt that Content Marketing has more lasting benefits.
We offer majorly two types of advertising:
1. Sponsored Posts: If you are really interested in publishing a sponsored post or a press release, video content, advertorial or any other kind of sponsored post, then you are at the right place.
WHAT KIND OF SPONSORED POSTS DO WE ACCEPT?
Generally, a sponsored post can be any of the following:
Press release
Advertorial
Video content
Article
Interview
This kind of post is usually written to promote you or your business. However, we do prefer posts that naturally flow with the site’s general content. This means we can also promote artists, songs, cosmetic products and things that you love of all products or services.
DURATION & BONUSES
Every sponsored article will remain live on the site as long as this website exists. The duration is indefinite! Again, we will share your post on our social media channels and our email subscribers too will get to read your article. You’re exposing your article to our: Twitter followers, Facebook fans and other social networks.

We will also try as much as possible to optimize your post for search engines as well.

Submission of Materials : Sponsored post should be well written in English language and all materials must be delivered via electronic medium. All sponsored posts must be delivered via electronic version, either on disk or e-mail on Microsoft Word unless otherwise noted.
PRICING
The price largely depends on if you’re writing the content or we’re to do that. But if your are writing the content, it is $60 per article.

2. Banner Advertising: We also offer banner advertising in various sizes and of course, our prices are flexible. you may choose to for the weekly rate or simply buy your desired number of impressions.

Technical Details And Pricing
Banner Size 300 X 250 pixels : Appears on the home page and below all pages on the site.
Banner Size 728 X 90 pixels: Appears on the top right Corner of the homepage and all pages on the site.
Large rectangle Banner Size (336x280) : Appears on the home page and below all pages on the site.
Small square (200x200) : Appears on the right side of the home page and all pages on the site.
Half page (300x600) : Appears on the right side of the home page and all pages on the site.
Portrait (300x1050) : Appears on the right side of the home page and all pages on the site.
Billboard (970x250) : Appears on the home page.

Submission of Materials : Banner ads can be in jpeg, jpg and gif format. All materials must be deliverd via electronic medium. All ads must be delivered via electronic version, either on disk or e-mail in the ordered pixel dimensions unless otherwise noted.
For advertising offers, send an email with your name,company, website, country and advert or sponsored post you want to appear on our website to omodjk(at)gmail(dot)com

Normally, we should respond within 48 hours.

Previous Post Next Post

Ad — After Posts / Before Footer

                     Copyright Notice

All rights reserved. This material, and other digital contents on this website, may not be reproduced, published, rewritten or redistributed in whole or in part without prior express written permission from Alexa News Network Limited (Alexa.ng). 

نموذج الاتصال