To be successful as a Software Engineer, you should have experience with:
Essential Skills:
- Extensive hands-on development experience with Core Java (Java 17+), Spring Framework, and Spring Boot.
- Ample proficiency in Python or Scala programming languages.
- Experience with Apache Spark and big data processing frameworks.
- AWS hands on with S3, EC2, ECS, Lambda, RDS, Glue, Athena, data pipelines, step function and knowledge of Analytical services.
- Experience with distributed computing architecture, Core Hadoop components (HDFS, Spark, Yarn, HIVE, Impala, HyperCube) & expertise in HQL.
- Experience of directly working with end users and BAs to elicit requirements, and work through design and implementation.
- Building high performance applications that process large amounts of data.
- Skilled communicator at a wide variety of levels and capabilities.
- Experience with Agile (PROTECTED) methodology and software development approach.
- Experience with VCS tools such as GIT or equivalent.
- Experience with Running and supporting structured testing.
Preferred Skills:
- Investment banking / risk experience or Willingness and capacity to learn complex financial concepts relevant to the role.
- Experience with devops/automation (CI/CD)
via Teamcity/JenkinGitlab or equivalent.
- Working knowledge of micro services, Kafka would be a big plus.
- Continuous improvement and contribute to the design and architecture of the overall solution.
Accountabilities
- Identification and analysis of business problems and client requirements that require change within the organisation.
- Development of business requirements that will address business problems and opportunities.
- Collaboration with stakeholders to ensure that proposed solutions meet their needs and expectations.
- Support the creation of business cases that justify investment in proposed solutions.
- Conduct feasibility studies to determine the viability of proposed solutions.
- Support the creation of reports on project progress to ensure proposed solutions are delivered on time and within budget.
- Creation of operational design and process design to ensure that proposed solutions are delivered within the agreed scope.
- Support to change management activities, including development of a traceability matrix to ensure proposed solutions are successfully implemented and embedded in the organisation.