The incumbent is responsible for the software development and maintenance of front- and back-end applications. The Software Developer should be able to independently design, develop, code, test and debug new software and to make significant enhancements to existing software using PHP, Java, MySQL or other programming languages; to design and develop secure scalable and fault tolerant solutions across a distributed architecture.
Role and Responsibilities:
This is an junior position requiring knowledge and experience in the following areas:
Proficient in modern programming languages (e.g. C, PHP, Java)
Experience of object oriented programming / modular programming
Excellent understanding of server-side programming.
Must write efficient scalable code with documentation.
Web Application development
Can read code written by others.
Has experience debugging code.
Testing and debugging
Conceive, design, and test logical structures for problem solving.
Analysis of relevant standards.
Understand and/or Write project requirements
Produce and review baseline documentation that collectively defines the solution.
Provide input and Follow the software development plan
Develop, test, and maintain software programs
Develop applications according to the specifications
Code detailed designs from design specifications, according to best practices and software coding standard.
Perform the testing and debugging.
Ongoing support throughout lifecycle of the product (or until the support responsibility has been re-allocated), to all departments and customers as and when required.
Build, test and implement the software solution, including any amount of coding that may be necessary.
Be thoroughly familiar with company standards and procedures.
Maintain all development documentation under configuration and source control as per company standards (incl. Source, documentation, etc.)
Ensure completion of deliverables by prescribed milestones, with proactive feedback.
Develop, operate and maintain current event ticketing platform
Design, develop and extend modules for the event ticketing engine in a re- usable and scalable manner, ensuring consistency with software architectures employed
Ensure integration of the ticketing engine with stadium access control units for match-day access and reporting
Extend the solution to integrate with the Blue Label core distribution switch to ensure that tickets can be accessed via the widest possible footprint
Integrate the mobile services platform to provide access via mobile channels to an integrated mobile eco- system with ticketing and loyalty and rewards included
Assist with the development and maintenance of the mobile ticketing application
Identify and implement effective solutions to continuously improve the software development methodology employed
Create and execute project work plans and revise as appropriate to meet changing needs and requirements, while reporting to the Scrum Master and agile team in daily scrum meetings
Understand system architecture and identify deficiencies which can be improved
Assist with the design and development of automated test harnesses and test cases, and
assist with the development of automated deployment techniques
Enforce coding standards, including mandated, correct use of source control repositories
Assist in the facilitation of team and client meetings and deliver informative, well-organized presentations
Effectively make use of different database design techniques
Suggest areas for improvement in internal admin processes along with possible solutions
Requirements of the Job
Experience with PHP
Experience with MySQL
Experience with Bootstrap
Experience with jQuery
Experience with RESTful web services with JSON (advantage)
Experience with high-volume public websites
Relevant 3-year degree (with computer science related subject as a major) (Highly Beneficial)
Exposure to Agile (advantage)
Competencies / Behaviour
Object Oriented Programming
Linux and Apache (Some knowledge of the Linux command line)
Web, WAP , HTML, HTML5,XML
Java and Mobile development considered a bonus
Embedded / C development considered a bonus
Excellent English communication skills
Software exposure: C; C++; PHP; Java;
Relational Databases and SQL, background with LAMP skills
Can work on XHTML/CSS based code based on templates.
Good levels of communication. Both written and verbal
Be familiar with company policies and procedures relating to software development.
Understanding of the complete testing life cycle, including developing test cases and test plans.
Deliver quality work within promised timeframes.
Generate enthusiasm among team members and facilitate effective team interaction