Specialist, Product Engineering
Impact and Value
- Re-engineer legacy applications and build state of the art platform.
- Consistently leads delivery of valuable features.
- Continually looking for process improvements.
- Proposes new ways of doing things.
- Suggests novel ways to fulfil requirements.
- Helps elaborate requirements where necessary.
- In depth knowledge of IDE, language and toolset in language of choice.
- Excellent understanding of language and framework and a good working knowledge of the abstraction layer underneath.
- Understanding of threads, threading model and concurrent programming.
- Can profile and optimize code.
- Good knowledge of other programming languages and paradigms and when to apply them.
- Comfortable debugging / finding complex problems.
- Can identify and apply appropriate design patterns to problems.
- Comfortable developing large features
- Understands Idempotence
- Understands boy scout principle. Leaves code in a better state then when arrived
- Good understanding of cohesion, SOLID and how to apply
- Writes clean, maintainable code
- Understands importance of domain model and can coherently model a problem domain within a given context
- Anticipates medium term (3-6 month) vectors of change and designs and abstracts accordingly
- Understands and appreciates simplicity and the value of removing code
- Understands design patterns such as CQRS and eventual consistency
- Understands how to design for performance at all levels
- Automates everything by default.
- Can build a CD pipeline.
- Automates security scanning and performance testing as part of build.
- Monitor systems to ensure they meet both user needs and business goals.
- Oversee assigned programs (e.g. conduct code review), set and monitor team standards.
- Evaluate and select appropriate software or hardware and suggest integration methods.
- Focus on reliability, performance and availability.
- Good grasp of multiple operating systems.
- Good grasp of scripting techniques.
- Expertise in one database and good grasp of multiple data storage paradigms and when to apply other technologies.
- Understands and can automate paas technologies.
- Understands when to apply appropriate infrastructure technologies.
- Understanding of network communications, including TCP / IP, HTTP protocols.
- Writes Secure code by default.
- Can use tools (nmap / metasploit, etc) to perform deep security probes.
- Understands server hardening.
- Understating of security principles using SSL protocols and data encryption.
Behaviours and Collaboration
- Leads group discussions on design of particular areas.
- Comfortable presenting information.
- Gains buy in from team and drives design.
- Mentors and develops those around them.
- Understands domain well enough to work with PO to drive value.
- Shares knowledge with wider community.
Our Ideal Candidate
We are looking for Language agnostic people, however below is the end to end tech stack we intend to use for developing our Credit Origination platforms.
- Bachelors in Engineering or equivalent or Masters in Engineering desirable.
- 5+ years of experience in developing world class products / applications.
- Java / J2EE
- Hands-on skills in J2EE specifications like JAX-RS, JAX-WS.
- Spring Boot - Java-based framework to create Micro Service.
- UI Development - using frameworks like REACT.
- Cloud Solutions - working on Azure or AWS.
- MQ - JMS, ActiveMQ, IBM MQ, etc.
- Continuous Integration - using tools like Maven and Jenkins.
- Continuous Deployment - using tools like Jenkins.
- Assembly Development - using frameworks like Apache Camel or Node.js.
Company Reg No.: 201131609D, Licence No.: 11C4684