This position will be responsible for managing and leading a team of developers to implement new and emerging technology solutions. The idea...
This position will be responsible for managing and leading a team of developers to implement new and emerging technology solutions. The ideal candidate will have broad familiarity with the very latest technology, including hands-on prototyping ability. He or she should be able to guide, motivate and help the team of developers and deliver to real project deadlines.
Should be able to drive detailed design technical workshops. The role will have a strong technology focus, but requires excellent people management and communication skills.
Knowledge / Skills
1. Previous or current hands-on software development experience.
2. Familiarity with more than one of the following technologies, with deep experience in at least one:
b. AI platforms like TensorFlow, Nia, Python, R
c. Blockchain platforms - Hyperledger, Ethereum, DAH etc.
3. Familiarity with professional version control and code deployment frameworks, including:
a. Continuous Integration and deployment
b. Bamboo/Jenkins, Stash c. Maven scripts d. Change control processes
4. Strong knowledge of security frameworks and controls, like:
a. Single sign on frameworks
b. Federated authentications technology
c. Network security and use of WAF
d. Software defined network controls e. HSMs (Hardware Security Modules)
5. Hands experience in development in a cloud environment
a. Familiarity with using services with standard cloud providers (AWS, Azure)
b. Experience with developing in Pivotal Cloud Foundry
c. Knowledge of "cloud ready" application design, including 12 factor application development methodology
d. Experience with Docker/Kubernetes
e. API gateways and micro services
f. Event frameworks like Kafka
6. Knowledge of software development methodologies and tools like Agile, using Jira.
1. Keep abreast of emerging technologies, including self-learning and hands-on prototyping.
2. Liaise with R&D team to select successful POC for production implementation.
3. Manage a team of developers, track tasks, budget, deliverables and quality. 4. Drive design decisions.
5. Test integration of application and services with legacy systems, security solutions, and monitoring tools.
6. Develop and test disaster recovery plans for the application.
7. Perform support tasks and incident response when needed.
Minimum of 5 years professional experience in leading development teams using emerging and modern technology platforms.
Bachelor's degree in Computer Science or related degree preferred.