Do you enjoy challenging yourself, and learning every day? Midokura is growing quickly and hiring in San Francisco, Tokyo, and Barcelona.

We are looking for people passionate about networking, distributed systems, virtualization, network security, network optimization, Linux programming, and more.

About Midokura

We’re a venture backed global startup with offices in San Francisco, Tokyo, and Barcelona. We started Midokura in early 2010 with the aim of solving the networking problems innate in infrastructure as a service (IaaS) public and private clouds. We’ve been heads down building a fully distributed, decentralized, software defined virtual network built for IaaS stacks.


If you’re a successful candidate, you’ll receive a highly attractive and competitive compensation package which includes base salary, pre-ipo stock, and excellent benefits.


  • Travel the world by visiting our overseas offices
  • Flexible hours
  • Free beverages, and snacks
  • Work from home days
  • Reimbursements for commuting
  • Help with apartment searches



Software Engineer - MidoNet Edge Cloud Platform

Software Engineer - MidoNet Edge Cloud Platform

Location:BARCELONA,  Spain
Experience:Mid Level

Position Overview

Midokura’s software engineers develop cutting edge software to solve real-life problems in the world of infrastructure virtualization, networking, Edge Computing, and Cloud. We are looking for a highly skilled and enthusiastic engineer with strong ability to work in a small team and learn new technologies. We are driven by passion and insatiable curiosity and are not constrained by conventional thinking.

MidoNet Edge Cloud Platform is an innovative edge computing cloud application that allows customers to deploy, manage and monitor various services and applications running on massively distributed devices. We are looking for software engineers who see the big picture of where Cloud, containers, software-defined networking(SDN), IoT, Big Data and AI technologies are headed and wish to be at the forefront of a new era of computing.

For this role, you will be asked to architect and develop a highly-scalable and reliable backend solution for MidoNet Edge Cloud Platform.


● Architect and develop distributed systems for control and monitoring.

● Design and implement highly concurrent and efficient software components.

● Test and debug.

● Interact with the product owners to gather requirements, architect solutions, provide means to deploy and support our software.


Desired Skills and Experience

● 3+ years of software development experience.

● Experience designing and developing distributed systems (high availability, fault tolerance, consistency, replication protocols).

● Strong Java and/or Scala development experience (previous experience in C/C++ is not required but will be taken into account).

● Concurrent and asynchronous programming.

● Test-driven development.

● Experience with Version Control tools and Continuous Integration frameworks.

● Excellent analytical skills.

● Strong written and verbal communication skills.

The following skills and experience are a plus

● Knowledge about L2-L7 network protocols including Ethernet, IP, TCP, HTTP.

● Container technologies such as Kubernetes, Mesos, and Docker.

● NoSQL databases such as MongoDB and Cassandra.

● Data processing engines such as Spark and Hadoop.

● Search engine platforms such as Elasticsearch and Solr.

● Machine Learning libraries, such as Tensorflow and Pytorch.

● Cloud technologies such as AWS and OpenStack.


● BS or MS in Computer Science, or related field, required.