CGI is seeking a hands-on Senior Back End Engineer with a proven technical expertise to join our dynamic team.
You will be involved in a mission critical project, working with a team of smart, dedicated people like yourself who build quality solutions for our customers.
Take your talents to a company that inspires growth and values your ideas.
As a senior back-end engineer for our IP Development scrum team, you will work closely with the architects to evaluate and design the solutions to assigned features.
Once the solution is defined, you will implement the solution by designing, developing, testing, and deploying both custom and off-the-shelf software.
You will also partner with multiple teams across technology - including architecture, infrastructure and operations, vendors, and consultants - to implement the roadmap.
You will help align solutions to the Product’s priorities.
You will be a part of the team that plans the solution to ensure capacity and scalability as demand and usage evolves.
A commitment to collaborative problem solving, sophisticated design, and quality products are important.
This role must be located in one of the following locations: Lafayette, LA or Lebanon, VA
The successful candidate will be a member of a high-performing agile team.
The senior back-end engineer must be self-motivated with a strong work ethic, time-management, and interpersonal skills.
The successful candidate must have demonstrated software engineering and effective communication skills.
Responsibilities:
Engage with architects/product team/leads to comprehend functional challenges, prototype new ideas, and new technologies, and help to create innovative solutions
Collaborate with the architects, and product owners to design, develop, test, and document frameworks, toolkits, and applications
Develop new services by writing their own code as well as by utilizing existing Microservices and APIs
Deliver robust technical designs, code, and documentation
Apply software development best practices, concepts, and principles throughout software development life cycle
Ensure that software meets or exceed specified standards and end-user requirements
Ensure adherence to secure coding standards and best practices
Maintain high standards of software quality by engaging in code review process.
Qualifications:
Required Qualifications:
8-10 years of Software Engineering experience with the design, development, coding, testing, deployment, documenting, and debugging of software.
6+ years of experience in Java technology stack. Back-end development capabilities supporting database, server-side development, and CI/CD integration
6+ years of experience with Spring framework (Spring MVC, Spring boot, Spring security)
6+ years of relational database, including PostgreSQL DB
Experience developing and utilizing Microservices and APIs
Strong knowledge of REST services
2 years of experience on Microsoft Azure or AWS tools and environments
Knowledge on DevOps tools and Continue Integration (CI) process using Docker, Kubernetes
Experience with Github, Bitbucket, etc. versioning systems.
Ability to work with automated unit test frameworks like Junit and Mockito.
Self-directed and self-motivated with the ability to take charge or play a supporting role
Excellent communication, and documentation skills and ability to communicate with senior architects
Desired:
Experience with web client-side development using JavaScript frameworks like Angular, React.js, Node.js, Typescript
Experience with technologies like HTML, CSS, JavaScript, Bootstrap.
Knowledge of Cloud, security, infrastructure, databases, and networking