Position Description
- Lead delivery teams which develop new custom applications or enhances existing applications, and provides system integration services
- Assist Project Manager in the planning and estimation of project deliverables
- Plan, direct and coordinate daily activities with the team members
- Contribute to the development of standards and processes
- Lead technical design
- Supervise the progress of development activities and contribute to it when required
- Create/ write technical documentation (System Design, Detailed Design)
- Perform code reviews
- Support the team in troubleshooting technical issues
- Enforce coding standards and best practices
- Assist project manager with adhering to project deadlines and schedules
Required qualifications to be successful in this role
Must Have Requirements:
- 3+ years IT Industry experience in application development as a team lead or technical manager
- Excellent understanding of key concepts of architecture in a distributed environment (SOA , etc.)
- Masters concepts and standards of the software industry such as object-oriented design , design patterns , modeling languages (UML, etc. ) and some communication protocols (SOAP, REST , etc.)
- Solid experience in technology implementation: Java / JEE , Web Services, Oracle DB, Message brokers (RabbitMQ, ZeroMQ, Active MQ), Streaming platforms (Apache Spark, Storm, Samza)
- Experience with development life cycle including:
o Source control ( CVS, Subversion , etc.)
o Build scripts ( Ant , Maven , etc.)
o Development of unit tests ( JUnit , TDD, etc.)
- Knowledge of XML , XSLT , XML Schema and JSON
- Experience working with a third party server environments: WebLogic (an asset), Websphere, JBOSS, Tomcat
- Proven ability to write high quality technical documentation (in English)
Other Requirements:
- Demonstrated ability to learn new technologies, applications and systems
- A hands on leader (able to code, able to dig deep)
- Strong verbal and written communication skills (primarily English)
- Strong organizational and leadership skills with the ability to facilitate technical sessions
- Can communicate in both technical and business terms
- Ability to lead multiple projects simultaneously
- Ability to manage a geographically distributed development teams