At a Glance
- Tasks: Lead software development, design features, and mentor junior engineers in a dynamic environment.
- Company: Join Chetwood Bank, a forward-thinking digital bank focused on innovation.
- Benefits: Enjoy competitive salary, 25 days holiday, hybrid working, and health insurance.
- Why this job: Make a real impact with cutting-edge tech while growing your skills in a supportive team.
- Qualifications: Strong Python experience and knowledge of databases and web services required.
- Other info: Participate in training, conferences, and initiatives to enhance engineering practices.
The predicted salary is between 36000 - 60000 Β£ per year.
You will be responsible for leading and coordinating deliveries and designs for medium to large features or engineering problems. You will work confidently and effectively to support the Engineering function of the bank.
Key Responsibilities
- Write high-quality code (appropriate style, patterns, organisation, comments, testability) with feedback and support.
- Follow well-known principles when appropriate e.g. KISS, DRY, SOLID.
- Test code thoroughly and proactively, and use good practices with feedback and support.
- Create small and manageable pull requests.
- Balance between perfect code and delivery goals.
- Make informed compromises when appropriate, and make sure to create and surface tickets for follow-up work.
- Able to design and implement systems that comprise of multiple technical components for a given set of feature.
- Consider non-functional requirements, and promote good resilience, performance, security, observability, and auditability practices to help other engineers deepen their knowledge.
- Ensure the designs are peer-reviewed and/or reviewed as part of the appropriate forums.
- Take an iterative approach to designing a solution.
- Implement and promote good system-level design practices.
- Make sure that the solution satisfies both functional and non-functional criteria.
- Understand continuous integration and the value of integrating small chunks of code into the main branch.
- Understand the benefit of vertical vs horizontal feature slicing.
- Manage risk in a way that allows the business to understand the options, and participate in the decision-making vs making unilateral choices.
- Highlight any potential dependencies between your team and other teams.
- Rely on documentation, forums, and technical knowledge to resolve blockers.
- Clearly and confidently articulate the risk of technical problems to non-technical stakeholders (e.g. legal, compliance).
- Create processes to standardise communications between engineers, leads or stakeholders.
- Carefully navigate disagreements and heated arguments involving yourself or other members of the team.
- Remain calm and ensure that an agreement on the way forward can be reached.
- Efficiently utilise existing documentation sources (Confluence, JIRA, GitHub, Google Drive, Postman, Slack) to uncover information.
- Always produce good quality documentation in the scope of your work (code comments, release notes, PR description, updated information on tickets, API documents).
- Promote good practices and automation when it comes to documentation within your team and/or community of practice.
- Consider the impact that your work has on the product, business or customer.
- Assess where this knowledge is lacking in their team and help more junior engineers understand the impact of their work.
- Demonstrate detailed SME knowledge in several domains (e.g. payments, KYC etc...).
- Use your understanding of system functionality to identify large limitations and impactful enhancements.
- Lead discussions on new or existing tools, technologies, automation, and engineering practices while being pragmatic in what can be changed or introduced vs what needs to be delivered.
- Take part in initiatives to improve the practices of the engineering discipline.
- Champion Iterative/Agile thinking practices within the team and the community of practice.
- Regularly mentor other engineers, particularly those less experienced than yourself.
- Participates in training sessions/seminars/courses.
- Attend conferences to promote Chetwood, hear about new developments in technology and banking.
- Understand the meaning of supporting services in production.
- If on-call during working hours, respond to incidents on time.
Skills, Knowledge and Expertise
- A strong experience with Python or a similar programming language.
- Strong experience designing relational and non-relational databases.
- A strong understanding of data structures and algorithms.
- Strong understanding of web services.
- Ability to write tests and testable code.
- Strong experience with distributed version control systems (e.g. Git).
- Experience building AWS serverless applications and using infrastructure as code.
- Experience working with and cultivating an Agile approach.
- Strong experience with RESTful APIs.
Desirable Skills & Experience
- Knowledge and appreciation of networking, and best security practices.
- Deep knowledge of AWS services, especially Lambda and EC2, but also SNS, SQS, API Gateway, Step Functions, S3, CloudWatch, DynamoDB.
- Great understanding of microservices, event-driven and request-driven architectural patterns.
Benefits
- Competitive salary
- 25 days holiday PLUS your BIRTHDAY off
- Pension contribution with Royal London
- Life Assurance
- Private medical, dental and optical health insurance with Axa
- Hybrid working β Wrexham
- Free breakfast available
About Chetwood Bank
Weβre a UK-based digital bank dedicated to getting the basics right and offering straightforward savings and mortgages.
Senior Software Engineer - Wrexham employer: Chetwood Bank
Contact Detail:
Chetwood Bank Recruiting Team
StudySmarter Expert Advice π€«
We think this is how you could land Senior Software Engineer - Wrexham
β¨Tip Number 1
Network like a pro! Reach out to current employees at Chetwood Bank on LinkedIn or other platforms. Ask them about their experiences and any tips they might have for landing the Senior Software Engineer role.
β¨Tip Number 2
Prepare for technical interviews by brushing up on your Python skills and understanding of AWS services. Practice coding challenges and system design problems that align with the job description.
β¨Tip Number 3
Showcase your soft skills during interviews! Be ready to discuss how you handle disagreements, mentor junior engineers, and communicate complex ideas to non-technical stakeholders.
β¨Tip Number 4
Donβt forget to apply through our website! Itβs the best way to ensure your application gets seen by the right people. Plus, it shows youβre genuinely interested in joining the team.
We think you need these skills to ace Senior Software Engineer - Wrexham
Some tips for your application π«‘
Tailor Your Application: Make sure to customise your CV and cover letter for the Senior Software Engineer role. Highlight your experience with Python, AWS, and Agile practices, as these are key to what we're looking for!
Showcase Your Code Quality: When discussing your past projects, emphasise your ability to write high-quality, testable code. Mention any principles like KISS or SOLID that you've applied, as this aligns with our expectations.
Be Clear and Concise: In your application, keep your language straightforward and to the point. We appreciate clarity, especially when it comes to technical details and your thought process behind decisions.
Apply Through Our Website: Don't forget to submit your application through our website! Itβs the best way for us to receive your details and ensures youβre considered for the role without any hiccups.
How to prepare for a job interview at Chetwood Bank
β¨Know Your Code Inside Out
Before the interview, brush up on your coding skills, especially in Python or similar languages. Be ready to discuss your past projects and how you applied principles like KISS, DRY, and SOLID in your work.
β¨Prepare for System Design Questions
Expect questions about system design and architecture. Familiarise yourself with concepts like microservices, event-driven patterns, and AWS services. Be prepared to explain how you would approach designing a system that meets both functional and non-functional requirements.
β¨Showcase Your Collaboration Skills
Since you'll be working closely with other teams, highlight your experience in managing dependencies and navigating disagreements. Share examples of how you've effectively communicated technical risks to non-technical stakeholders.
β¨Demonstrate Your Mentorship Experience
As a senior engineer, mentoring is key. Be ready to discuss how you've supported junior engineers in understanding their impact on projects. Share specific instances where you've led discussions on best practices or new technologies.