The role involves working with a range of stakeholders: business "product" owners, domain managers, quality managers and other development teams, infrastructure, operations, and the architectural team in order to design software solutions and to resolve issues.
- Work closely with a group of domain leads, business owners, analysts, domain managers, and relevant other parties to understand and shape requirements for new development/troubleshooting of existing development.
- Assist the Head of Core Engineering and Solution Architects with the analysis and design of the overall solution architecture.
- To take responsibility for reviewing the design components of an overall solution.
- Creates elements of the software specification document set including Class Diagrams, Sequence Diagrams, and DB design amongst others.
- To write project briefs, proposals, and implementation plans where required and on small to medium d projects for providing initial estimates.
- Work with the UX/Product Teams and Product Owners in building world-class experiences for our customers.
- Responsible for the delivery of assigned modules/tasks.
- Code, test and troubleshoot software programs utilizing the appropriate hardware, database, and programming technology.
- To provide assistance to QA and service desk personnel as needed to diagnose system problems and to review/repair legacy code if required.
- Review changes in code and the environment to understand and minimize the negative impact on system performance.
- Work closely with the infrastructure, build and release, database, and other related teams to ensure swift and efficient deployment of code releases to live (production) environments.
- Build reusable components, templates, code, and libraries.
- Optimize applications for maximum speed and scalability
- Supervision of junior/mid-level software engineers to complete deliverables within a given project/maintenance task.
- Prepare reports and analysis regarding issues, incidents in progress, opposing ideas, and appropriate recommendations or conclusions.
- To maintain – and actively seek to utilize – subject matter expertise across a range of technology trends and domains (to include electronic publishing, web & mobile development, and social media trends).
- Participate in Agile and Scrum best practices as we strive for continuous integration and delivery
ROLES AND RESPONSIBILITIES
o Does (The tasks/responsibilities that the role performs to address requirements in Key Result Areas)
- Primarily responsible for translating the solutions and design given by the technology engineer in an optimized code based on the requirements.
- Ensure that the timeline given to developing the system is followed.
- Create a systematic code to develop the solutions.
- Write release documents for each system release.
- Test and modify systems to ensure that it operates reliably.
- Find faults, diagnose, and fix bugs.
o Displays (The Knowledge, Skills, and Behaviors indicating how tasks/responsibilities will be performed)
- Knowledge of computer systems and technologies
- Technical competency
- A logical, analytical and creative approach to problems
- Thoroughness and attention to detail
- Strong communication skills and the ability to articulate technical concepts with clarity.
- Familiarity with a corporate environment and comfortable working within regulatory controls.
- Able to influence and drive change and improvement in the way the team develops software.
- Experience working with Docker and Kubernetes, such as in an OpenShift environment.
III. QUALIFICATIONS (Minimum requirements in terms of experience and background, skills and competencies for sourcing purposes)
- Strong foundation in Computer Science, with strong competencies in data structures, algorithms, and software design optimized for embedded systems.
- Must come from a technical background with the ability to read and write source code across multiple languages
- Must be able to demonstrate the ability to work effectively in a team environment and deliver successful results.
- Worked on cloud and on-premise server environment, integration technologies
- Developed common third-party APIs such as Google, Facebook and other web services (ie, REST, SOAP/WSDL)
- Experience in the open-source environments which include Linux (Ubuntu/Red hat), MySQL and Java
- Familiar with basic financial terminology and accounting methods
- Worked on Amazon Web Service, SES, SMTP, Linux OS, Cron
- Familiarity with Big data tools such as Apache Spark and Hadoop
- Exposure to continuous integration, build tools (Jenkins, Ansible, Ant, Liquibase) and scripting
- Exposure to DevOps tools such as Puppet, Chef or Docker would be advantageous
- Use of source code version control – Git, Subversion or Mercurial