Company DescriptionCome join us and make a difference in the world!
We're NEC Software Solutions (part of global tech giant NEC Corporation). While you read this ad, our software is helping to dispatch ambulances, support families, keep trains on the move, locate missing people and even test the hearing of newborn babies.
Working with us, you'll be helping our 3,000+ employees push the boundaries of what's possible and support amazing public services.
We work with governments, hospitals, police forces, housing providers, local authorities and more. We help them pay financial support faster, speed up treatments for patients and respond to emergencies in the right way. The more we do, the more our customers can do for others. And together, we make a world of difference.
We'd love your help. And we'll support you all the way.
Discover more at www.necsws.com
Job DescriptionThe Justice Development Team is responsible for producing products and services for the probation, prison and policing sectors. We are currently undertaking a number of new developments to support the ever-changing justice landscape.
We have invested heavily in our infrastructure and technology capability, enabling us to deliver innovative solutions and faster times to market. We harness the latest tools and technology, allowing our business to work faster and more intelligently whilst we move from private cloud to being fully hosted in AW.
We have a varied technology stack including Angular, Java, Spring Boot, Typescript and Python and we use Docker containers and ECS technologies for all our new applications. Our test automation environment is Java-based and we use an exclusively Agile (Scrum) approach for planning and delivery.
What you will be doing:As a Senior Java Developer you will be part of a very competent team that works on mission - critical applications contributing in all phases of the development process. You will be responsible for Java application development, supporting business objectives while providing expertise in the full software development lifecycle, from concept and design, to testing.
Responsibilities- You will spend most of your time hands-on in the production of software for Justice products.
- Discuss, establish, maintain and improve the backend solution, including good software design, framework selections and direction of the codebase.
- Solve problems with little supervision.
- Provide engineering options, with unbiased pros and cons to meet problems shared by the business.
- Prepare and produce releases of software components.
- Provide support for production systems.
- Develop and improve the confirmation testing strategies (unit test, integration testing) using suitable front end testing libraries.
- Support continuous improvement by investigating alternatives and technologies and presenting these for architectural review.
- Support and coach junior developers.
- Adopt Agile methodologies such as Kanban and Scrum.
QualificationsWho Are You?An experienced Java Developer with expert hands-on knowledge and the ability to lead by example, offer solutions and contribute to an expanding team.
In particular, we are looking for:
- BSc/MSc in Computer Science, Engineering or equivalent.
- 5+ years of full time professional experience in designing and developing applications using the Java/Spring Boot ecosystem.
- Object Oriented Analysis and Design.
- Experience with popular Java frameworks and technologies such as Spring Framework, JPA/Hibernate.
- Experience with asynchronous messaging technologies.
- Experience designing and developing HTTP APIs.
- Excellent knowledge of SQL.
- Working knowledge of Maven, Git and CI/CD principles.
- Experience of at least one of the following cloud technologies: Amazon Web Service, Google Cloud Platform, Microsoft Azure knowledge
The following skills/experience would be desirable:
- RabbitMQ, Kafka.
- Horizontally scalable, distributed, microservices architectures.
- NoSQL databases such as Redis, Elasticsearch.
- SQL databases such PostgreSQL
- Caching technologies, such as Hazelcast.
Additional InformationPersonal/Team growth and development:- Develop new skills by working with other members of the team
- Work with the Team Lead and Manager to identify training goals
- Lead and partake in technical discussions within the team
- Actively identify and complete opportunities for self-training and external training
- Drive the team's process of continual improvement
Personal attributes that will help you:- Problem solving - recognition of problems and recasting difficult-to-solve problems in order to find unique and innovative solutions
- Inquisitiveness - digging into problems and solutions to understand the underlying technology
- Autonomy - ability to work on a task and solve problems independently
- Motivation - sets personal challenges and constantly looking to stretch themselves
- Integrity - honest and transparent in dealing, open to voice and accept criticism, is trustworthy and builds credibility through actions
- Detail focussed - pays attention to the details and can make a conscious effort to understand causes instead of just the effects
- Big picture aware - understands the scope and impact of a problem or solution
What Do We Offer?The opportunity to work with a fantastic and supportive team! And.............- Single Private Medical Cover (with the option to select family cover at an additional cost)
- 25 days paid holiday (includes 3 company nominated days) with the option to buy/sell up to 5 days
- 4 x basic salary life assurance cover
- A Group Pension Plan with fantastic employer contributions
- A selection of tax efficient flexible benefits to suit your individual needs
- The role offers a competitive salary
Videos To Watchhttps://vimeo.com/708149107