Discovery Group Information Services CAS
Senior Developer
About Discovery
Discoverys core purpose is to make people healthier and to enhance and protect their lives. We seek out and invest in exceptional individuals who understand and support our core purpose, and whose own values align with those of Discovery. Our fast-paced and dynamic environment enables smart, self-driven people to be their best. As global thought leaders, Discovery is passionate about innovating to not only achieve financial success, but to ignite positive and meaningful change within our society.
About Group Information Services CAS
Our division is responsible for designing, building, and supporting central applications that are used both inside Discovery, as well as externally by our brokers and financial advisors.
Key Purpose
We are seeking a developer responsible for building and supporting applications. Your primary responsibility will be to design and develop these layers of our applications, and to coordinate with the rest of the team working on different layers of the infrastructure. A commitment to collaborative problem solving, sophisticated design, and quality product is essential.
Areas of responsibility may include but not limited to
Planning
- Perform a high-level impact analysis, establish Scope, and provide estimates based on technical requirements.
- Proactively liaise with all stakeholders.
- Create required planning tasks in SDLC tool and set due dates according to agreed milestones.
- Actively participate in the collaborative technical design process.
- Research and find effective solutions to technical issues that arise.
- Update development timelines based on final requirements.
- Liaise with the relevant subject matter experts where clarification is required.
- Translate technical requirements into executable code without errors.
- Ensure optimally performing system code in line with technical specifications, following prescribed process, architecture standards and procedures.
- Ensure delivery within agreed timeframes.
- Conduct unit testing and fix any defects found within the agreed SLA.
- Escalate risks to the project early on.
- Run code through the automated code review tool, review errors with the technical lead and fix before committing to the code base.
- Perform peer code reviews to ensure consistent application of standards, logic and effective use of libraries and reusable aspects of the software.
- Develop and maintain reusable Unit Tests.
- Assist the Test Analyst in ensuring that a comprehensive test pack is produced, which includes all the required scenarios.
- Verify that the completed software meets the established standards and is fit for purpose.
- Review the risk / impact of defects found in testing, prioritize, and ensure that the priority is accurate.
- Conform to the Build and Release cycles.
- Provide timeous support to the Quality Assurance Team when issues arise during testing.
- Handle all outstanding defects.
- Production Support and Root Cause management:
- Ensure that the root cause of system errors is effectively analyzed and prioritized for fixing.
- Proactively bring issues and problems to the attention of the team and propose solutions to solve them.
- Assist system users and the infrastructure teams with technical support issues.
- Adhere to the culture of communication and collaboration across all teams.
- Attend and participate in the regular team / project stand-ups.
- Actively mentor team members where required.
- Provide feedback at the regular 1-on-1s with your leader.
- Proactively set goals, track them and address any concerns with your leader.
- Participate in Performance reviews with your line manager and project leads.
- Actively participate in internal up-skilling initiatives.
- Transfer knowledge and contribute to building a shared knowledge base.
- Keep abreast of current technological trends and how these might be applied in the Discovery environment.
- Constant improvement of knowledge of the various applications, their functions and data models.
- Ability to communicate clearly, constructively and effectively. Able to follow and participate in technical, business process, and other discussions.
- Able to build strong business relationships with other members of the team and the business areas we support.
Personal Attributes and Skills
Knowledge Processes
- Design patterns
- Data modelling and design of database structures, including tools such as Enterprise Architect.
- Unit and Systems Integration testing
- SDLC methodologies (Agile, Waterfall, DevOps, etc) and tools (Jira, BitBucket, Quality Center, etc)
- GIT version control
- Java programming language (Java 7 or later)
- Java EE
- JBoss/Weblogic EAP (or similar Application Server)
- Data layer (JPA, Domain Object Model, XML/XSD, JAXB, ORM frameworks, RDBMS Oracle and PL/SQL beneficial)
- Business services (EJB, RMI)
- Integration services (JMS, Apache Camel, REST / SOAP web services)
- Messaging systems (Tibco EMS, Oracle Advanced Queuing, MQ)
- Presentation layer technologies (Java Server Faces, Java Server Pages, HTML 5, JavaScript, jQuery, CSS3)
- Design patterns (DAO, Command pattern, MVC, etc)
- Spring Framework ( Spring MVC , Spring Batch)
- Hibernate
- JUnit or JMock
- XML knowledge
- JSON knowledge
- SonarQube
- Build tools (Apache Ant, Maven, Jenkins, etc)
- Self-starter who takes ownership and accountability and can work with minimal supervision Most Important!
- Passionate about technology and development
- Results oriented with the ability to work under pressure and cope with multiple concurrent projects with changing priorities and deadlines
- Strong analytical and problem-solving skills
- Ability to deal with complexity and migrate between detailed and high-level requirements
- Excellent written and verbal communication skills
- 3-year university degree in computer science or business informatics, or similar qualification, is highly preferable
- 7 or more years experience in building and maintaining Java applications
EMPLOYMENT EQUITY
The Companys approved Employment Equity Plan and Targets will be considered as part of the recruitment process. As an Equal Opportunities employer, we actively encourage and welcome people with various disabilities to apply.