Job Openings Senior Software Engineer - Java with Python
About the job Senior Software Engineer - Java with Python
- 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.
- Performing basic database administration, performance optimization, index optimization, writing advanced select queries, and replacing 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.
- Hands-on 5+ 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.
- Experience coding in Python.
- 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.