Job Openings
Software Engineer 1856
About the job Software Engineer 1856
Key responsibilities:
- Address the entire software development lifecycle - to analyse the needs, and then design, test and develop software to meet those needs.
- Document the process using diagrams and flowcharts, developing computer instructions using algorithms.
- Develops information systems by designing, developing, and installing software solutions.
- Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
- Develops software solutions by studying information needs, conferring with users, and studying systems flow, data usage, and work processes.
- Investigates problem areas.
- Follows the software development lifecycle.
- Documents and demonstrates solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
- Prepares and installs solutions by determining and designing system specifications, standards, and programming.
- Improves operations by conducting systems analysis and recommending changes in policies and procedures.
- Obtains and licenses software by obtaining required information from vendors, recommending purchases, and testing and approving products.
- Provides information by collecting, analyzing, and summarizing development and service issues.
- Accomplishes engineering and organization mission by completing related results as needed.
What we are looking for:
- Demonstratable experience of professional software development experience.
- Have a thorough understanding of computer systems, in order to recognise any hardware limitations that could impact software design.
- Proficiency in Java or C++, and object-oriented design skills.
- Application architecture and design patterns.
- Experience serving as technical lead throughout the full software development lifecycle, from conception, architecture definition, detailed design, scoping, planning, implementation, testing to documentation, delivery and maintenance is preferred.
- Knowledge of professional software engineering and best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
- Experience in development of distributed/scalable systems and high-volume transaction applications
- Bachelor's degree in Computer Science or similar field
- 5 years' relevant experience
- Knowledge and experience with Java, ReactJS, RESTful SOAP API, Oracle, etc
- Experienced with Autosys, CI/CD, OnDemand, Ansible, Observability platform will be advantageous
- Experience with RedHat Linux systems will be advantageous.
- Knowledge of watermelon, python, and selenium would be advantageous
- Broad knowledge and solid experience in technology operations
- Experience of managing or working with large software applications in complex technology environments
- Knowledge of the financial services industry is preferred