JOB TITLE: Full Stack Developer
Length: 12 months (extendable)
Location: Downtown Toronto (2-3 days per week onsite)
Main Duties
As a Full Stack Developer, the successful candidate will be expected to perform the following duties with a high level of competence:
- Work with other team members and liaise with nominated business stakeholders when required to ensure that business requirements are fully understood before commencing design and development.
- Forward thinking for other devices and required accessibility.
- Implement best-of-breed technical solutions based on agreed technical design, adopting industry standard development patterns and methodologies (including continuous integration and automated unit and integration testing)
- Fully test implemented solutions in advance of User Acceptance Testing
- Assist (when required) with the deployment of components to development and test environments
- Developers in our team are expected to own the end-to-end delivery of software from analysis through to release to production and support. We deliver each change to production before moving onto the next.
- Everyone in our team releases code to production, everyone in our team raises production change requests, everyone in our team does production support.
- Participate in intra-day and overnight Support.
MUST-HAVES
- Strong Java 8+ knowledge
- Strong / Good ReactJS knowledge
- HTML, Javascript, CSS knowledge is essential for this role
- Must be able to debug the existing code, extend the functionality and/or fix issues if any.
- Understanding of micro service architecture and ability to write REST APIs
- Can write sensible tests to verify functionalities and endpoints
- Sound knowledge of Redux store
- Has prior hands-on experience around any CI-CD tooling. Candidate must be able to build a CI-CD pipeline independently for a new service / component.
- Always considers implementing Security around functionalities / services / endpoints
- Good Knowledge database schema design. Knowledge of PostGres will be good to have.
- Aware of working in Devops POD and expected to do production support on rotation basis
Experience
- 5-6 years of experience of SQL and relational databases is essential, and experience of Oracle is advantageous.
- Java server-side development experience
- Experience of working in UNIX environments is essential
- How to liaise effectively with users – in this role this will be with relationship managers and business functions (e.g. Legal, Ops, KYC).
- Experience of working in a front-office environment in an investment bank is advantageous
- Front Office development team in Large Investment Bank, supporting global trading desk
Department Overview
Client Services Digital IT are changing how software development is done within a bank, and with success. To give you an idea of what we've done since inception (2019) , here are few statistics –
Releases to production:
• 2019 – 3,459 (Within 6 weeks of project inception, we were live in production)
• 2020 – 7,574 (in under 11 months)
When we tell people this, they usually respond with… “…but this is a bank!” Others in the organization have called us purple unicorns.
What are we doing?
Our teams are building the next generation of digital platforms for WholeSale Banking. We are building a user-friendly Client Onboarding experience that will transform the way that Corporates and Institutions access our range of services and products.
We hope to make the Onboarding process as simple as possible to improving client experience and ensure they choose to bank with us in the future.
Whilst doing this we are changing the bank in many ways:
- We are dealing with lots of legacy systems in the bank, we are strangling some of these and exposing their functionality through APIs
- We have a lot of tech debt in our own systems, and we are iterating it all of the time, improving the estate whilst delivering business value
- To move at pace across multiple teams we are breaking down monolithic architectures to smaller services with well bounded business contexts
- We are pushing to change how development teams work with other groups in the bank such as infrastructure, security, business risk. We are helping to drive the banks’ wider DevOps agenda and breaking down the silos that have become so prevalent over the last decade
- We help other teams to move faster, by showing then them simple techniques they can implement immediately to move towards continuous delivery
How are we doing it?
We are agile in its truest sense. We have a vision; we always do the smallest possible thing and iterate on the back of feedback. We are product driven, not project driven.
We relentlessly focus on getting working software into the hands of users. We are changing everything we do all the time to minimize waste and to get faster.
Our relationship with the business is new; we are looking to operate as a single team and break down the barriers between us. We take pride in the quality of the software we deliver to our users; we are disciplined and move at pace with repeatability, safety and control. We don't just talk, we do.
Our current technology stack is:
- Java on the backend
- HTML5 on the front end – we mostly use ReactJS for building our apps
What are we looking for?
We need your help to continue improving and grow, and that's what is why we are hiring.
We are not perfect… perfection would stand in the way of progress. We are looking for all sorts of people in our teams, but our focus right now is developers at all levels, from graduates to experts in their field.
In particular, we’re looking for developers who are happy to roll up their sleeves and get stuff done.
If there is something in the way of us getting working software into the hands of our users, we step in and get it moving – whether that means doing some analysis, coding, testing or releasing. Everyone in our team does production support on rotation for a day per month, and everyone also releases code to production.
We value specialism but we don't have fixed roles – our firm belief is that everyone must contribute to software in production.
We are looking for people who are flexible in their approach and who are happy to try new things and experiment, and be comfortable in throwing experiments away to start again if they don’t work.
We are looking for people that enjoy technology and are happy to play. Some of the people that we are looking for will have played with Puppet, Docker, Clojure, Rust, Haskell, InfluxDB, Go… we don't use all of these right now but we value new points of view being put across all the time.
You don't need to have prior experience working for an investment bank. In fact, we'd love to hear from more people working outside banking to see if they can bring a twist to what we do and help us grow our culture.
The pay range that the employer reasonably expects to pay for this position is between CA$70.00 and CA$90.00
Our voluntary benefits offering includes medical, dental, vision and retirement benefits.
Applications will be accepted on an ongoing basis.
Tundra Technical Solutions would like to thank you for the interest you have demonstrated in this opportunity. However, only candidates with the required skills will be contacted.
Tundra Technical Solutions is an Equal Opportunity/Affirmative Action Employer. We welcome and encourage diversity in our workplace.
Not interested in this position, but know somebody who might be? Check out our Referral Reward Program, referrals are a big secret behind our success. As always, we’re on the lookout for great people. And we know that you know great people!
Tundra Technical Solutions is among North America’s leading providers of Information Technology and Engineering staffing and consulting services. Our success and our clients’ success are built on a foundation of service excellence. Rather than continually trying to sell to new clients and companies and simply filling databases with candidates, we focus on developing stronger relationships and deeper knowledge of our existing clients’ challenges and opportunities.
Open ears. Open minds. Open futures