Senior Software Developer

As a member of the Atlas development team you’ll be responsible for helping deliver high-quality bespoke software and database projects on time and within budget. Working as an individual or within a team you will contribute throughout the full development life-cycle for both new and on-going projects.

POSITION IN ORGANISATION

Reports directly to the Development Manager.

SCOPE OF JOB

As a Senior Software Developer you will be expected to partake in the design, development and testing of clever, high quality systems for customers and for Atlas’ own web applications.

You will be required to take part in or lead the daily SCRUM meetings and to act as Project Lead for customer projects.

QUALIFICATIONS

Degree level qualification or equal experience in a related subject or field.

SKILLS AND ABILITIES

Expertise in appropriate development languages (C#, HTML, etc.)

Strong communication skills

Excellent problem solving skills

Ability to lead a team to achieve project deliverables in a timely fashion

Eye for detail and identifying problems and solutions

An understanding of business

At least 4 years commercial experience

Self-motivated, able and open to learning and professional development

A wider understanding of system architecture and software development best-practices

Ability to organize and prioritise work load in-line with business needs

DUTIES AND KEY RESPONSIBILITIES

Participate in bespoke software design & development, including:

Developing new and on-going web and Windows software projects.

Logging error reports in accordance with defined bug tracking process to ensure that bugs are identified and quantified as soon as possible.

Investigating and debugging error reports assigned to you.

Creating and utilising efficient database schemas, making full use of normalization, indexing and primary and foreign key constraints.

Maintaining up-to-date time tracking and task status information in accordance with our time tracking and project processes to facilitate accurate project planning.

Liaising with customers where required to ensure we deliver excellent customer service.

Providing technical reviews of requirements, organising requirements into sprints and estimating the time required for development.

Deliver all software to a high quality by:

Identifying and recording, via development management tools, areas of the codebase that may require refactoring and, where necessary, performing that refactoring with minimal impact on existing functionality.

Maintaining and promoting language-appropriate coding styles.

Making full use of defined testing practices to help confirm software requirements are being met and to identify and then fix changes that will break existing functionality.

Ensuring all source code and database schemas are kept up-to-date and under source control at all times, including providing descriptive commit messages to help track changes throughout project development and maintenance.

Raising with your project lead or manager, in a timely manner, any actual or potential problems and risks you encounter during development.

Identifying to your project lead or manager any processes, tools or training you think would improve the software we deliver or help you further your skills as a developer.

Ensuring systems and features are designed and implemented in a safe, robust, maintainable way, adhering to software development best practices.

Assessing the risks, rewards and impact of prioritising certain tasks over others and relaying that information back to the project manager or client.

Triaging bug reports, assessing the risks, benefit, and impact of reported problems versus the amount of time required to investigate and fix and relaying that information back to the project manager or client.

Taking prioritised features and tasks and planning sprints within a release to ensure all features are completed on time.

Planning time effectively to ensure you and your team can deliver to agreed deadlines within the given timeframes.

Pro-actively highlighting to the project manager or client any risks that may impact, prevent, or delay development and/or delivery.

Managing the software release cycle so testers have access to new features and fixes with enough time for feedback and corrections prior to release.

Providing assistance and mentoring to junior members of the software development team.

WHAT WE OFFER

£Competitive salary depending upon experience

Freedom for personal growth and development of your role

A peer learning environment and managers invested in employee growth

25 days holiday per year

Pension

Private Health Care

HOW TO APPLY

To apply for the Senior Software Developer position, please email your CV to hello@atlascode.com with the job title in the subject line.