Job Description

We are hiring a senior software engineer to join our team. This role is for our distributed team, who normally operates within the +8 UTC (Cebu) to +10 UTC (Sydney) time zones.
As a senior software engineer, you will help us build our telecommunications products which are being used by customers globally. We want to empower small and medium businesses to offer telecommunications products in a way that they can compete with big companies. If you are interested to work on this mission, please join us.
This role is a member in one of our software team, which we designed to be tight-knit and cross-functional, responsible for the full cycle of software development in order to deliver complete features to our users.
In addition to the role of software engineer, this role will include maintaining our legacy software and will thus require experience in a specific technology stack.
What you will be doing?
A senior in our engineering team, will have the following functions:
+ Lead and responsible in designing software features and maintenance tasks
+ Lead and responsible in ensuring code quality is followed
+ Lead and responsible in team learning activities
+ Provides mentorship and responsible for feedback to other team members
+ Participate as needed in roadmap development and release planning
In addition, a software engineer, will have the following functions:
+ Study, understand our products, its designs, users, and user requirements
+ Implement product features in accordance to our coding conventions
+ Implement libraries and tools in support of development, delivery pipeline, and production
+ Implement test code to ensure quality, manually perform test, and responsible in fixing quality issues
+ Deploy software in production and perform maintenance activities
+ Write documentation for others to use and refer
+ Participate in monitoring, on-call, and responsible in responding to production incidents
+ Participate in providing support to users and customers
+ Participate in team practices such as pair programming and code reviews
+ Participate in architecture and product design workshops
+ Participate in team activities to deliver software that satisfy business needs
+ Responsible for self-assessment as part of our weekly self-reported check ins
+ Continuously learning to ensure useful and effective participation in the teams
As a specialized software engineer, the following are expected:
+ Study and understand the features, design, implementation, and maintenance of our legacy software (developed in Perl)
+ Implement and test new features and fixes in our legacy software
+ Write documentation and mentor other software engineers regarding the legacy software, as necessary
As part of our distributed team, the following are expected:
+ Establish a working space and infrastructure, to effectively participate in a distributed environment
+ Schedule work on a daily basis, with a minimum of 4 hours overlap with the rest of the team
+ Use a stable, high quality Internet access for video conferencing
+ Able to join a video conference during working hours
Who you are?
+ We are looking for someone with the following qualification:
+ With at least the equivalent of 6 years work experience, in any programming language, in building a software or an IT system
+ With experience in Perl (Embperl) development
+ Knowledge of one or more of the following technology stacks is an advantage:

+ PostgreSQL
+ MySQL
+ Postfix mail server
+ Nginx
+ DNS
+ Puppet

+ Has at least 3 technical specializations that can teach others about
+ Can implement complex functions using the main programming language we use (Java, Javascript), that is widely used in a system
+ Knowledge in scaling databases and processes to support many users, data points, and concurrent processing
+ Can participate and provide useful insights in technical and architecture design process
+ Can teach and help others understand technical topics
+ Can explain technical concepts in business and user terms
+ Can explain and communicate business and product concepts to the team
+ Advance knowledge in many topics identified below
In addition, a software engineer, has the following qualification:
+ Knowledge of using any programming languages, in building functions and features in a software
+ Knowledge of databases design, data modeling, and writing test code
+ Use of app services and technology APIs, such as message queuing service (ActiveMQ), in-memory data store, persistent object data store (AWS S3), etc.
+ Can use tools for collaboration such as Git, Trello, Confluence
+ Admin and shell usage of Linux-based systems (Cent
Save Job