Senior Software Engineer

  • Basis:  Full-Time
  • Closing Date:  25 Sep, 2020
  • Job Ref:  KMP-55045

Job Description

Company Introduction
Does the world of IoT and Telematics interest you? We are an international technology company currently developing telematics, IoT and other related solutions for various markets worldwide. We offer vehicle tracking and fleet management solutions, RFID tracking and a host of other GPS based technologies.

We are on the lookout for a Senior Software Engineer that can lead and implement telematics solutions. Our vision is to work hand-in-hand with our customers to transform our telematics solutions into high-value services that constantly create value, transparency and positive experiences. Our mission is to improve the quality of life for consumers through the processing and presentation of rich telematics data that is packaged into intuitive and ease of use services. We are looking for someone who is passionate about heavily influencing our products roadmap and excited to roll up their sleeves and be hands-on. If you are interested in making the world smarter than this is the job for you.

Overview
We are looking for a highly skilled Senior Software Engineer who is fluent and experienced with back end programming whilst also comfortable with a degree of front-end programming. As a Senior Software Engineer you are responsible for leading, architecting and implementing web and cloud-oriented solutions that are high performant, reliable and secure. In addition, you are required to work within a team and coordinate technical efforts effectively.

Senior Software Engineers will be required to see out a project from conception to final product, requiring good organisational skills and attention to detail.

Responsibilities:

  • Building enterprise applications with a keen focus on performance, resilience and quality
  • Working in an agile-based scrum environment to develop critical parts of existing and new web and cloud-oriented services / telematic gateways
  • Demonstrating proficiency with object-oriented design and development in Java
  • Building RESTful web service and communication between applications and 3rd party cloud-based systems (AWS,
  • Azure, DigitalOcean, co-located services)
  • Parsing / processing HEX and JSON data
  • Working with Relational or NoSQL data stores (PostGres and MSSQL)
  • Implementing caching strategies using key-value pair cache structures
  • Working with continuous delivery build and deploy tools such as Ansible and Jenkins
  • Working with enterprise messaging broker such as RabbitMQ
  • Working with cloud technologies (AWS, Azure, DigitalOcean)
  • Creating design and architectural documentation for systems being built and maintained
  • Writing automated tests using Junit framework
  • Troubleshooting and remediating production system issues
  • Performing log management and analysis using ElasticSearch and Kibana
  • Monitoring the health of the system using framework such as DataDog and Grafana

Skills and Qualifications:

  • 5 Years + of experience handling production-grade implementations
  • Bachelors or Master’s degree in computer science or similar technical field
  • Spring Boot Lead Developer experience in application components using Spring Boot
  • Fluent and experienced with Java 7, Java 8, functional aspects, Spring Framework (It is important that the resources are familiar with the current Spring platform and its capabilities), Spring Boot, Spring Integration with build management and continuous integration systems (Ansible or equivalent)
  • Fluent and experienced with the messaging system RabbitMQ or equivalent
  • Fluent and experienced with Spring Data, Swagger, Tomcat 8, Maven, Ansible, Bitbucket, Git, Postman / Newman
  • Fluent and experienced developing multi-threaded applications
  • Fluent and experienced with database technology such as MSSQL, Postgres and MongoDB
  • Experienced with Single sign-on using OpenID Connect, Oauth2, Active Directory, Certificates
  • Experience with building multi-tenant solutions
  • Experience in using code analysis and profiling tools
  • Proficiency with fundamental front-end languages such as HTML, CSS and JavaScript
  • Familiarity with JavaScript frameworks such as React
  • Proficiency with other server-side languages such as Microsoft .Net
  • Strong organisational and project management skills
  • Excellent verbal communication skills
  • Good problem-solving skills
  • Attention to detail