Summary
The Software Engineer is a creative and skilled mid-level developer responsible for designing, prototyping, and coding new innovative solutions as well as analyzing and modifying existing code. You will ensure that these components and the overall application are robust and easy to maintain. You will coordinate with other members of Elixir’s Product & Engineering department working on different areas of the product. Therefore, a commitment to collaborative problem solving, design, and quality product is important.
To be successful in the position you are highly passionate about application design and programming and aspire to contribute to our digital transformation agenda. You will join an inspiring and curious team responsible for designing and developing our category leading communications operations platform that turns highly regulated customer communications into a competitive advantage and impacts how information is communicated to thousands of consumers worldwide.
This position works a hybrid work arrangement where your in-office presence is required at our Islamabad office a minimum of 3 days per week.
Essential Functions
Working as a member of a multi-functional agile squad, the essential functions of the role include, but are not limited to:
- Design, develop, test, deploy, maintain, and enhance large scale software solutions.
- Develop and implement technical strategies to achieve business goals and drive innovation.
- Solve technical problems of high scope, complexity, and ambiguity in collaboration with squad members.
- Contributing to architectural best practices and process improvements through code reviews.
- Identifying and correcting bottlenecks that optimize delivery execution and the adoption of development best practices.
- Apply Test-driven Development (TDD) and automated testing practices to produce reliable code.
- Provide technical support to product users and Elixir colleagues when necessary and provide a high quality of communication and support.
- Maintain any training or certification as required, including compliance, annual refresher, policy, or job-specific training.
- Embrace and sustain a work environment that supports Elixir’s core values: Community, Learning Culture, Integrity, and Pioneering.
- Other duties as required.
Competencies
- Fluent in at least one programming language such as Java
- Good knowledge of databases such as MySQL, Oracle, or MongoDB
- Experience with content management systems (CMS) and version control (Git)
- Ability to accurately estimate and scope development work
- Self-starter who can grasp difficult concepts quickly and work with minimal supervision
- Knowledge of development best practices using modern technology stacks
- Knowledge of production grade applications and services with consideration for security, scalability, and reliability will be a big plus
- Understanding of TDD, automated testing practices and the ability to apply them to produce solid code will be a big plus
- Problem-solving skills and critical thinking
- Ability to work independently and with a team
- Communication skills
- People and interpersonal skills
- Is inquisitive and asks great questions
Required education and experience
- Proven experience and proficiency working as a Software Engineer with end-to-end software development project lifecycle delivery execution
- Solid problem-solving and critical thinking skills
- Experience using standard Unit Test frameworks and the ability to do performance testing
- Hands on experience with Agile development including daily scrum and weekly iteration reviews and planning