Senior Software Engineer

Description:
This is a unique opportunity to take on a senior engineering role at an early stage startup, and work with the leadership team in shaping the technical direction of the product. You will be working directly with Nivi’s CEO, who has served as CTO of TinyURL and has multiple exits from previous startups, to design, build, and maintain a product that can scale to millions of users.
We’re looking for a creative and passionate engineer who has the proven ability to architect and build consumer facing products that are able to scale to support millions of users. The position will be a full-time position with Nivi in Nairobi, with equity.
Responsibilities:
Key to this role are the following responsibilities:
Building Nivi’s core platform in a manner that supports the addition of new features and services in rapid fashion
The creation of data driven dashboards and backend systems to enable other teams to build out data driven user acquisition and retention strategies, as well as enable partners and customers to access aggregate data in a consumable way
Scaling the architecture stack to enable the system to function nationally and internationally with 99.99% uptime
Requirements:
Demonstrated ability with 10+ years’ experience in creating products that have significant user bases and are highly reliable
A demonstrated ability to design, develop, test, and deploy applications built upon the principles of microservices architecture
Strong proficiency in building out services in the cloud, specifically using AWS Lambda, API Gateway, messaging technologies such as SNS and SQS, caching services such as Memcached and Redis, and data stores such as MongoDB, RDS, and Cassandra
The ability to create automated test suites to enable unit and functional testing locally, and the ability to integrate code into a CI pipeline
The ability to design and develop user testing frameworks that allow for rapid feedback and incorporation of feature changes into a product
The ability to communicate technical and product concepts to non-technical audiences
Demonstrated ability to work in a collaborative environment to develop shipping products
An ability to think creatively and adjust according to shifting requirements
Proficiency in Node.js is strongly preferred though not an absolute requirement if proficiency is shown in other languages that are similar