Job Openings Senior Software Engineer - Java

About the job Senior Software Engineer - Java

Responsibilities :

  • Building and maintaining solutions that scale. Serving millions of users every day.
  • Contributing to building and maintaining the policies, procedures, and technical assets in company cloud infrastructure.
  • Supporting various teams with a technical vision in the core areas of interest for company's products.
  • Supporting multi-cloud-based communication products, especially as an augmentation to the internal technology team and working with partners software development teams.
  • Working on cloud-based development and deployment, including the following: AWS (EC2, SQS, S3, RDS, Aurora).
  • Working closely with service delivery teams to support product deployments to the cloud.
  • Understanding and using company's technical architectures, tools, and techniques to build powerful, efficient, flexible, and scalable solutions.
  • Ability to perform basic database administration, performance optimization, index optimization, write advanced select queries, and replace cursor usage with relational SQL.
  • Collaborating with product owners, scrum masters, and other developers to deliver a quality product using tools such as JIRA and Git.

Job requirements

  • Hands-on 9+ years of experience in developing complex projects, preferably in the communications domain by using Java (Spring Framework).
  • Hands-on experience in Web Development (HTML, CSS, JS).
  • Practical experience in queuing systems/message brokers like ActiveMQ, RabbitMQ, Kafka, Beanstalk, SQS, etc.
  • Practical experience with cache technologies such as Memcached, and Redis.
  • Solid experience in managing Linux servers and applications (Nginx, apache2, etc).
  • Proficiency in a Linux environment and in consuming and designing RESTful APIs.
  • Solid experience with full Software Development Lifecycle, Distributed Architectures (REST, SOAP, Queue-based), and Microservices Architecture.
  • Bachelor's degree in Engineering, Software, or a related discipline or the equivalent.
  • Familiarity with software project management tools similar to Agile, Maven, and Git.
  • Experienced with using cloud hosting technologies such as AWS.
  • Familiar with SaaS and PaaS integration architecture and applications.
  • General knowledge in telecommunications (SMSC, VOIP, SMPP, etc).
  • Excellent communication skills.
  • Strong problem-solving and analytical skills.