Summary of Responsibilities:
Design, develop and implement proof of concept and production-ready middleware and back-end services either stand-alone or to be consumed by other applications/layers.
Debugging and troubleshooting.
Create extensible, modular middleware/back-end services to be used by other layers.
Research and development in a variety of problem domains.
Prepare documentation and ensure proper security and compliance with our coding standards.
Required Experience:
Extensive knowledge of multi-paradigm programming (OO, functional, procedural)
Python, Django, Tornado, Flask, SQL and Python ORMs, RESTful services, pub/sub, Amazon AWS, Linux/Unix, TDD, Virtualenv.
Experience and knowledge of distributed systems, SOA and microservices architectures.
Have designed and implemented scalable, distributed application systems.
Problem solving, complexity analysis and algorithm design.
Fluent English is a MUST.
Preferred Experience:
Degree in Computer Science, Information Systems, Software Engineering or related, or 7 years equivalent work experience.
Knowledge of Functional Programming a plus.
CouchBase or other NoSQL experience a plus.
MQTT, Rabbit MQ or Redis.
Continuous Integration/Continuous Deployment a plus.
Stability and Capacity patterns a big plus.
Have worked with international and remote teams.