Senior Application Developer
Primary purpose of the role
- The Application Developer contributes to the development of software, web, and multi-media applications that facilitates the achievement of business outcomes and improves business efficiencies and processes through leveraging technology.
- Applications developers translate software requirements into workable programming code and maintain and develop programs for use in business.
- The role usually involves writing specifications and designing, building, testing, implementing and sometimes supporting applications using programming languages and development tools.
- They often work as part of a team with other IT professionals, such as software engineers and systems analysts, and write programs according to their specifications.
- They may also work on generic products or for individual clients providing bespoke solutions.
- Prepare specialised code as required by the product definition to enable application development
- Contribute technical expertise to requirements analysis to enhance the quality of the solution design
- Complete testing and gather feedback to improve the quality and reduce operational risk of the developed application
- Undertake post-release activities to develop a base of knowledge to be incorporated in future build and release cycles
- Provide 3rd level application support and problem resolution to minimise the impact of application related service outages
- Key challenges - Balance competing demands to ensure project objectives are delivered based on business need and priority.
He knows things such as:
- What are the non-functional requirements to the system and how does the architecture reflect them,
- What are the stakeholders development plans for the application and why the architecture do not hinder this development in the future,
- What components are in the system and what are their responsibilities,
- What are the interfaces and available connections between components,
- What kind of technologies, standards and limitations are used to create the application.
- For instance, he can clearly tell where to find a certain functionality of code, as well as which components may communicate with database and how.
- The main duties and responsibilities of the application developer role are as follows:
- Work as part of a project team, reporting to a I.T managers.
- Work closely with business staff to ensure solutions adhere to client standards and fit their strategic enterprise architecture
- Definition and management of non-functional requirements, including working with others to ensure these requirements have been met
- Definition and organization of development tasks and accurate estimation of these tasks
- Work closely with members of the development team to ensure that the software design and implementation meets the architectural goals and quality standards
- Provide support to the business analysts, and other project team members, during functional requirements definition to ensure that functionality is both technically achievable and feasible within the project constraints
- Identification and ownership of technical project risks and issues, including owning mitigation activities and resolution of issues
- Undertake other duties as directed by line managers commensurate with the post
- Actively seeking opportunities to contribute improvements to Client’s applications
- Mentoring junior members of the development team including training
- Acting as a focal point of expertise on key technologies or skills
- Implement development projects of all description (either IT related or not)
- Liaising with Development Team, Test Analysts and Business Analysts for technical development
- Maintenance of projects as well as enhancements.
- Maintenance and enhancement of Legacy systems.
Education, Qualifications and Desirable Experience and Knowledge
- B.Sc. with Information Technology or Computer Science majors OR B.Eng. or other B.Sc. degree with notable computing and mathematical content Additional relevant IT Development certification would be advantageous Other skills (bonus)
- Insurance experience
- Database design experience such as SQL and Mongo
- Network/infrastructure design experience (Optional)
- Experience of enterprise architecture definition
- Experience of the full software development lifecycle
- Experience of architecting software solutions with demanding non-functional requirements such as performance, high availability, reliability, security, etc.
- Extensive development experience
- Knowledge of a wide range of open source projects and components (Optional)
- Excellent knowledge and understanding of object oriented design techniques and patterns
- Knowledge of several standard software development methodologies
- Knowledge of integration patterns and technologies
- Client interaction experience, including experience of running workshops with clients
- (Beneficial) – Experience working in an agile environment
- (Beneficial) – Knowledge and/or experience with SOA architectures
- (Beneficial) – Knowledge and/or experience in systems such as service bus
- (Beneficial) – experience in web technologies such as angular
- Understanding of OOP and Visual Studio and Clean code
- Integration experience between front/back end
- Exposure to Version Control with Git/Subversion /Bitbucket and branching strategies
- Knowledge of multi-threaded, multi-tiered applications
- Experience with Service Orientated Architecture
- ReSharper and Domain Driven Design
- Build and continuous integration frameworks like teamcity, octopus
- Team Foundation Server
- Distributed Systems design and Reporting Structure
- Software Development Manager: Business Software Solutions
Back-End Skillset (minimum)
- Web API or MVC ( 3,4,5 )
- Working knowledge of RDBMS like MSSQL (2008 and up) and MongoDB (nice to know)
Back-End Skillset (bonus)
- Securing web applications
- Dependency Injection , IOC
- Test driven development
- RESTFul Web Services
- Message Bus experience
- OWIN experience
- Mobile Development
- CORS experience
- Service bus
Front-End Skillset (minimum)
- UX/Usability experience a must
- Html (XHTML, HTML4 and HTML5 )
- Exposure to Client-size MVC Frameworks
- [knockout, backbone, ember but Angular especially]
- CSS2 and CSS3
- Debug tools such as Firebug / Chrome Dev Tools
- Cross Browser/Platform development
- Consuming Data formats such as JSON/XML
Front-End Skillset (bonus)
- Responsive UI Experience
- CSS Preprocessors (LESS/Sass)
- HTML5 Apis ( Video, Geolocation etc. )
- Website speed / performance optimization experience
- Twitter Bootstrap 3
- Signal R
Closing date: 05 May 2021
PLEASE NOTE THAT FEEDBACK WILL BE GIVEN TO SHORTLISTED CANDIDATES ONLY. For more info, please email us at --------Please upload your CV here--------