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.
Engineering principle: We ship robust, high-quality code, written for humans to read and maintain!
Engineering Lead, Python
The Engineering team at Unifonic is looking for a proactive and dynamic Engineering Lead, Software to join our diverse team of developers. In this role, you’ll be playing an active part in the hands-on process of building software, managing a team, and contributing to production-facing code on a regular basis.
The successful candidate should have a strong technical background in order to be a good counsel and advocate for engineering. They should also have excellent team management and leadership skills.
The responsibilities of the Engineering Lead, Software include, but are not limited to:
Support with recruitment & hiring of engineering talent and facilitate the onboarding of new team members.
Work with other engineering teams to identify and anticipate changing requirements and opportunities to improve the development environment.
Work with product managers, designers, and engineers to prioritize, plan, and schedule work.
Communicate status, risks, and requirements to other groups.
Provide technical and non-technical guidance to the team, both individually and as a group.
Facilitate continuous learning and improvement for the team and its members.
Hands-on 7+ years of relevant engineering work experience and 4+ years of hands-on technical management experience in shipping large-scale projects with multiple dependencies across teams.
Bachelor's degree in Engineering, Software, or a related discipline or the equivalent.
Expert in Python, with advanced knowledge of Python web framework flask.
Solid understanding of fundamental design patterns and principles required for building scalable applications composed of reusable components using Python.
Solid experience with full Software Development Lifecycle, Distributed Architectures (REST, SOAP, Queue-based), and Microservices Architecture.
Experience with the Node.Js Express framework is a plus
Practical experience in queuing systems/message brokers like ActiveMQ, RabbitMQ, Kafka, Beanstalk, SQS, etc…
Able to create database schemas that represent and support business processes
Strong unit test and debugging skills
Proficient understanding of code versioning tools such as GIT
Knowledge of the Agile Framework and experience with a Project Management tools such as Jira
Strong attention to detail while maintaining sight of the big picture.
Must be able to spend substantial time interfacing with the offshore teams on a daily basis.
Experienced with using cloud hosting technologies such as AWS.
Superb problem-solving and analytical skills.
Excellent communication skills with fluency in English.
Nice To Have
Solid understanding and hands-on experience in Python concurrency patterns, and event-driven architecture.
Familiar with SaaS and PaaS integration architecture and applications.
Understanding of fundamental design principles behind a scalable cloud based application, using containerization and Kubernites.
Understanding of the differences between multiple delivery platforms, such as mobile vs desktop, and optimizing output to match the specific platform.
General knowledge in telecommunications (SMSC, VOIP, SMPP, etc...).
Understanding of accessibility and security compliance.
Familiar with managing Linux servers and applications (Nginx, apache2, etc...).