Senior Software Developer

Role Overview

As a Senior Software Developer on our Product Development team, you will work with our technical and business leadership on one or more of our cybersecurity products.

You will bring your passion for software craftsmanship and knowledge of the latest trends and industry best practices in software development to deliver high quality solutions to the cybersecurity threats affecting our customers.

At eSentire, we work collaboratively in an open, transparent and inclusive development culture. All team members are encouraged and expected to interact with Product Managers, fellow Developers, Testers, and other stakeholders throughout the product development life-cycle.

What we want to see:

  • A pragmatic approach to problem solving (knowing how to balance time vs. effort vs. perfection)
  • Passion and empathy to help others around succeed for the benefit of the whole team and the whole organisation
  • Ability to mentor other team members in technical skills
  • Fostering of best practices within the team
  • Passion to use TDD, BDD to create high quality software
  • Exceptional interpersonal, multi-tasking and teamwork skills
  • A high degree of energy and enthusiasm for software development
  • Desire and ability to work collaboratively in a transparent and team-based culture
  • Exceptional English communication skills (both written and verbal) 

What you will be doing:

  • Improve product quality through sound development practices
  • Creating and improving clean, accurate, maintainable, and testable code, often working in tandem with Product Managers, fellow Developers, QA Specialists, Designers, and UX team
  • Participate in agile project execution - daily stand ups, collaborative peer reviews and product demos
  • Apply excellent communications skills, creativity and practical knowledge to benefit our clients and to effectively represent our company
  • System analysis, design, coding and testing of new features, re-factor and maintain existing code, where necessary
  • Design / architect micro-service that are parts of the overall service-oriented architecture within the guidelines given by the technical leadership
  • Identify opportunities to improve solutions or processes and offers constructive suggestions for positive change

To be successful in this role, you will:

  • Have a BSc Computer Science, Computer Engineering or Software Engineering 
  • OO Analysis, Design and Development
  • Passionate about delivering continuous value through agile and lean delivery methodologies
  • Excels working within highly collaborative teams to build great software solutions
  • Strong analytical skills combined with the ability to meet tight project deadlines
  • Agile delivery experience is preferred, where you have worked in a collaborative development team in an iterative manner
  • Exceptional English communication skills (both written and verbal) are a must

Nice to Have experience in one or more of:

  • Experience working with scripting languages, Python or Ruby preferred
  • Experience with NoSQL stores like Elasticsearch, MongoDB, CouchDB, ES, Apache Solr, Cassandra, HBase, Hadoop
  • Experience with messaging middleware or stream processors like RabbitMQ, Apache Storm, or Apache Kafka
  • Experience with Linux container technology and its management platforms like Apache Mesos, Google Kubernetes or similar platforms
  • Experience with distributed file storage and filesystems like HDFS and similar
  • Experience with Continuous Deployment practices and tools
  • Experience with Big Data frameworks
  • Experience with Cloud Platforms like Google Cloud Platform, AWS