Software Engineer
Full-time, Permanent
Software Engineer
Location: Remote
Job Type: Full-time, Permanent
Reports to: Team Manager
Contracted hours: 40 hours per week
Hours of work: Monday to Friday between 8:30am - 6:00pm
Please note we are not looking to work with any agencies or recruiters on this role.
Benefits:
- Competitive salary
- Discretionary annual bonus
- 25 days holiday per year
- ‘All About Me’ day
- Perkbox
- Private health insurance
- Life insurance
- Pension contribution
- Flexible working
- Professional development/qualifications support
- All the latest tech you need
- Social events
About PremFina and the team
We’re an award-winning FinTech, revolutionising the way people pay for insurance.
Together, we exist to help empower our partners and transform the insurance industry for the better by creating a world where insurance is more accessible and affordable for everyone. We’re a fast-growing team, united by our belief in positive disruption to help contribute to a more inclusive society.
We’re not just about finance - we're about making premium finance smarter, smoother and better integrated to deliver good outcomes and fair value for all our customers.
About the role
As a Software Engineer, you'll play a pivotal role in designing, developing, and implementing innovative software solutions that drive efficiency, enhance customer experiences, and push the boundaries of technology. Collaborate with top-tier professionals in an inclusive and empowering environment that values your expertise and encourages you to explore new ideas.
At Premfina, you'll work on diverse projects that challenge your problem-solving skills and creativity. Whether you're crafting user-friendly interfaces, optimizing backend systems, or integrating cutting-edge technologies, your contributions will have a lasting impact. We foster a culture of continuous learning, providing you with opportunities to expand your skill set and stay at the forefront of industry trends.
Join us in an environment that offers not just a job, but a fulfilling career. With competitive compensation, flexible work arrangements, and a wealth of growth prospects, Premfina is where you'll find the support you need to thrive as a Software Engineer. Elevate your career with us and be part of a company that's revolutionizing how insurance and finance intersect in the digital age."
Desirable experience.
- Good technical degree at undergraduate or postgraduate level, or equivalent industry experience
- Comprehension and competency of modern GPLs including exposure to C#, .Net Core, Python, Java, or similar.
- Comprehension and competency of writing clean, maintainable, verifiable, and tested code that is suitable for intra-team collaborative working.
- Knowledge or exposure to micro-services development, particularly containerization, Dapr, Durable Functions, AWS Lambda, Azure Functions.
- Familiarity with agile working practices, with a strong bias towards the creation of demonstrable “working software”.
- Exposure to inter-service communication patterns and ideally familiarity with one or more of Apache Kafka, Azure Service Bus, MSMQ, gRPC, Protocol Buffers, and/or REST-driven integrations
- Appreciation of SOA and DDD design patterns in modern software implementation.
Role Accountabilities and Behaviours
Autonomy
Works under general direction. Receives specific direction, accepts guidance and has work reviewed at agreed milestones. Uses discretion in identifying and responding to complex issues related to own assignments. Determines when issues should be escalated to a higher level. Plans and monitors own work (and that of others where applicable) competently within limited deadlines.
Influence
Interacts with and influences colleagues. May oversee others or make decisions which impact routine work assigned to individuals or stages of projects. Has working level contact with customers, suppliers and partners. Understands and collaborates on the analysis of user/customer needs and represents this in their work. Contributes fully to the work of teams by appreciating how own role relates to other roles.
Complexity
Performs a range of work, sometimes complex and non-routine, in a variety of environments. Applies a methodical approach to routine and moderately complex issue definition and resolution. Applies and contributes to creative thinking or finds new ways to complete tasks.
Business Skills
- Demonstrates effective oral and written communication skills when engaging on issues with colleagues, users/customers, suppliers and partners.
- Understands and effectively applies appropriate methods, tools, applications and processes.
- Demonstrates judgement and a systematic approach to work.
- Effectively applies digital skills and explores these capabilities for their role.
- Learning and professional development — takes the initiative to develop own knowledge and skills by identifying and negotiating appropriate development opportunities.
- Security, privacy and ethics — demonstrates appropriate working practices and knowledge in non-routine work. Appreciates how own role and others support appropriate working practices.
Knowledge
Has sound generic, domain and specialist knowledge necessary to perform effectively in the organisation typically gained from recognised bodies of knowledge and organisational information. Has an appreciation of the wider business context. Demonstrates effective application and the ability to impart knowledge found in industry bodies of knowledge. Absorbs new information and applies it effectively.
Role-Specific Competencies
Programming/Software Development
- Designs, codes, verifies, tests, documents, amends and refactors moderately complex programs/scripts.
- Applies agreed standards and tools to achieve a well-engineered result.
- Monitors and reports on progress. Identifies issues related to software development activities. Proposes practical solutions to resolve issues.
- Collaborates in reviews of work with others as appropriate.
Systems Design
- Follows standard approaches and established design patterns to create new designs for simple systems or system components.
- Identifies and resolves minor design issues.
- Identifies alternative design options and seeks guidance when deviating from established design patterns.
Software Configuration
- Assists in designing, verifying, documenting, amending and refactoring moderately complex software configurations for deployment.
- Applies agreed standards and tools, to achieve a well-engineered result.
- Collaborates in reviews of work with others as appropriate.
Application Support
- Follows agreed procedures to identify and resolve issues with applications.
- Uses application management software and tools to collect agreed performance statistics.
- Carries out agreed applications maintenance tasks.
Testing
- Designs test cases and test scripts under own direction, mapping back to pre-determined criteria, recording and reporting test outcomes.
- Participates in requirement, design and specification reviews, and uses this information to design test plans and test conditions.
- Applies agreed standards to specify and perform manual and automated testing. Automates testing tasks and builds test coverage through existing or new infrastructure.
- Analyses and reports on test activities, results, issues and risks.
Requirements
- Technology (To be able to work from home)
- Ability to work remotely (virtually) with the space and freedom to have confidential calls
- Access to a reliable / fast internet connection
Interested in applying?
If you're interested in a role with us here at PremFina and you think this is the role for you, then please submit a copy of your CV to careers@premfina.com and we'll be in touch.