Software Developer/ Engineer/ Architect

Java Developer

  • Velocity, the amount of work (several features) completed within a sprint.
  • Cycle time metric describes how much time was spent on a task, including each time the work had to be reopened and completed again.
  • Code quality, the quality of the software and/or service.
  • Writing simple code, with clear intent to other developers and the machines running the systems. One metric of code simplicity is cyclomatic complexity, this measures the number of independent paths your code might have to take – the fewer, the better.
  • Writing scalable code, refers to creating changes to the product that don’t harm the rest of the business.
  • 2+years experience with Java fundamentals/Spring boot/Object Oriented programming languages
  • Knowledge of object oriented design, data structures, algorithm design, problem solving and complexity analysis
  • Experience in analysing data while developing solutions to problems
  • Knowledge of software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
  • Working experience with Unix/Linux
  • Experience in scripting languages such as bash


Desirable:

Experience or desire to:

  • Build high-performance, highly available and scalable systems
  • Debugging, diagnosing, and trouble-shooting complex, production software
  • Work with cloud technologies and initiatives
  • Develop microservices
  • Work with one or more message brokers Kafka, NATS, HiveMQ or RabbitMQ
  • Managing distributed systems and or IOT devices