Akvo is a not-for-profit foundation that creates open source, internet and mobile software and sensors. We work with people improving infrastructure and services, for disadvantaged populations. We focus on making international development and country governance more effective, transparent and collaborative.
Around the world, we help our partners act to improve the management of water, sanitation, agriculture, health, energy, education and the environment.
Akvo's staff are based in multiple locations. We have a head office in the centre of Amsterdam with hubs and satellite offices in Stockholm, Washington DC, Nairobi, Ouagadougou, Bamako, Singapore, Bangalore and New Delhi. We also have people working remotely in numerous other locations around the world
Our Development team is a diverse and distributed group across Europe with clusters in Amsterdam, Stockholm and Barcelona.
The Akvo Platform is a group of common services used by our products.
Main tasks and responsibilities
Develop, maintain, scale and evolve all the common/shared services (e.g. Single sign-on, central authorization service, unified event store, Maps service, etc)
Together with the team lead, coordinate architecture concerns between products
Identify cross cutting concerns that can be moved into the Akvo Platform
Provide technical direction to the rest of teams
Research existing FOSS components and assess the trade-offs (build vs buy)
Collaborate with QA and Ops teams to make better products, more reliable and maintainable.
Requirements and competencies
“Strong opinions, weakly held”
You have designed and/or developed complex systems in combination with organizational constraints
You like mentoring junior and mid level engineers and you’re strong proponent of good programing practices (Data driven design, DDD, SOLID, etc)
You have amazing debugging / troubleshooting capabilities
You know how to deliver a working product and meet a deadline
You know more than just programming knowledge (e.g. business domain, agile teams/organizations)
You have JVM experience (diagnose/debug performance and memory problems)
You have GNU/Linux experience (diagnose/debug performance problems) and you have been exposed to Docker and orchestration tools
You have experience from fast growing organizations and/or Lean startup methodology
Our tech stack
Programming languages: Clojure, Java, Python, JavaScript (Node.js) - You can read more about our Clojure history: https://juxt.pro/blog/posts/clojure-in-akvo.html
Databases: PostgreSQL / PostGIS, MySQL, Google App Engine Datastore (A monolith system currently being re-architected)
Deployments moving into Docker/Kubernetes/GKE
Misc: Nginx / Varnish / Redis
What we offer
Work with free and open source software
Team and organization committed to learning, knowledge sharing, personal growth and working at a sustainable pace
Help build and maintain services used in 60+ countries, making the development aid more transparent and helping to the governance of countries
We made data collection an easy task with Akvo Flow, we’re now making data analysis easier with Akvo Lumen. The Akvo Platform should be prepared to scale up at IoT/Sensors levels of data
To apply for the position, please send your motivation letter and resume to Iván Perdomo work[at]akvo.org