Principal Software Engineer - Java
Pakistan, Punjab, Lahore
3d ago

Job description

Unifonic is a customer engagement platform that enables organizations to delight customers with remarkable omnichannel experiences.

By unifying communication channels, messaging apps, and chatbots, Unifonic streamlines conversations at every touchpoint throughout the customer journey.

Principal Software Engineer - Java

The Engineering team at Unifonic is looking for an outstanding Principal Software Engineer to join our diverse team of developers.

In this role, you will be gaining command of the internal workings of Unifonic's existing products and technology, implementing enhancements, supporting bug fixes, performing data analysis, reporting key metrics for Unifonic's platform, and working on the next-generation evolution of the products while using the latest tools and technology within agile scrum teams.

The successful candidate should have solid experience in Software Development. They should also have practical exposure to queuing tools and cloud hosting tools.

The responsibilities of the Principal Software Engineer include, but are not limited to :

Build and maintain solutions that scale. Serving millions of users every day.

Contribute to building and maintaining the policies, procedures, and technical assets in Unifonic’s cloud infrastructure.

Support various teams with a technical vision in the core areas of interest for Unifonic's products.

Support multi-cloud-based communication products, especially as an augmentation to the internal technology team and working with partners’ software development teams.

Work on cloud-based development and deployment, including the following : AWS (EC2, SQS, S3, RDS, Aurora).

Work closely with service delivery teams to support product deployments to the cloud.

Understand and use Unifonic'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.

Collaborate with product owners, scrum masters, and other developers to deliver a quality product using tools such as JIRA and Git.

Must Have

  • Hands-on 10+ years of experience in developing complex projects, preferably in the communications domain by using Java (Spring Framework).
  • Strong experience and sound knowledge in telecommunications (SMSC, VOIP, SMPP, etc.).
  • 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, 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.

    Practical experience with using cloud hosting technologies such as AWS.

    Excellent communication skills, with strong problem-solving and analytical skills.

    Nice To Have

    Bachelor’s degree in Information Technology, Software Engineering, or other related fields.

    Familiar with SaaS and PaaS integration architecture and applications.

    Familiarity with software project management tools similar to Agile, Maven, and Git.

    Pakistan, Punjab, LahoreEngineering

    Report this job

    Thank you for reporting this job!

    Your feedback will help us improve the quality of our services.

    My Email
    By clicking on "Continue", I give neuvoo consent to process my data and to send me email alerts, as detailed in neuvoo's Privacy Policy . I may withdraw my consent or unsubscribe at any time.
    Application form