As a Senior Developer you will be responsible for designing, implementing, and maintaining our products in a collaborative environment. You will be using industry best practices whilst develop and delivering design solutions in this cross functional team. MAJOR DUTIES • Consult with clients and colleagues concerning the maintenance and performance of software systems, with a view to writing or modifying current operating systems • Analyse projects and determine software specifications that must be fulfilled to achieve objective. • Write and test code, refining and rewriting it as necessary and communicate with any programmers involved in the project • Evaluate and implement enhancement design solutions to improve cost, quality, and performance of software application. • Collaborates with other relevant stakeholders and team members to ensure that features meet business needs. • Investigate new technologies • Mentor junior software engineers on the team. QUALIFICATIONS & SKILLS • Bachelor’s degree in Computer Science, Computer Engineering or a related field or equivalent experience. • Knowledge in data structures, algorithms, run-time analysis and object-oriented design. • Programming experience with at least one modern language • A passion for solving problems and providing workable solutions • Knowledge of algorithms and data structures • Strong analytical and reasoning skills with an ability to visualise processes and outcomes • Proficiency in troubleshooting software issues and debugging a large codebase • Outstanding all-round communication skills and ability to work collaboratively To be successful you will need a minimum of 5 year experience