Senior Software Engineer

Overview

On Site
Full Time

Skills

Cloud Computing
Scalability
Collaboration
UI
Golang
System Integration
Systems Architecture
Agile
Continuous Integration and Development
Continuous Integration
Continuous Delivery
Articulate
Management
Continuous Improvement
Quality Assurance
Computer Science
Software Engineering
Java
JSP
JSTL
Spring Framework
Web Applications
Apache Tomcat
Kubernetes
AngularJS
Bootstrap
Cascading Style Sheets
Sass
JavaScript
jQuery
Code Refactoring
Microservices
Enterprise Services
Orchestration
Conflict Resolution
Problem Solving
Communication
Security Clearance

Job Details

MTSI is seeking a Senior Software Engineer to play a critical role in the transformation of a legacy Tomcat web application into a modern, containerized microservices architecture. This highly visible and mission-critical role will involve maintaining and transitioning the existing Tomcat-based system while simultaneously redesigning core services to leverage emerging enterprise services and implement a new architecture using Golang and Angular.

Job Description:
  • Maintain and enhance a legacy Tomcat web application while planning its transition to a cloud-native architecture.
  • Redesign the application for deployment within a Kubernetes cluster to ensure scalability, reliability, and security.
  • Refactor traditional monolithic structures into modular microservices using modern integration strategies and emerging enterprise services.
  • Collaborate with cross-functional engineering teams to ensure smooth integration of new services following industry best practices.
  • Develop and maintain software components using Java (Java 8 and Java 21), utilizing technologies such as JSP, JSTL, CDI, and Spring alongside a responsive user interface that leverages Bootstrap, CSS, SCSS, JavaScript, and JQuery.
  • Implement new architecture by leveraging Golang-based services and Angular for a modernized front-end experience.
  • Document technical designs, system integration requirements, and transition processes in support of ongoing and future initiatives.

Responsibilities:
  • Take ownership of large sections of the system architecture while working collaboratively with teams.
  • Drive agile development practices and support robust continuous integration/continuous delivery (CI/CD) pipelines.
  • Clearly articulate complex system designs and technical concepts to both technical and non-technical stakeholders.
  • Oversee the evolution of the software process from development through deployment, ensuring efficient and secure code integration.
  • Engage in continuous process improvement to enhance software quality, performance, and reliability.

Required Qualifications:
  • Bachelor's degree in Computer Science, Software Engineering, or a related technical field.
  • 5+ years of hands-on software engineering experience.
  • Proficiency in Java development (Java 8 and Java 21) with expertise in JSP, JSTL, CDI, and Spring frameworks.
  • Proven experience in maintaining and modernizing web applications, particularly within Tomcat and Kubernetes environments.
  • Solid expertise in modern front-end technologies, including Angular, Bootstrap (versions 4 and 5), CSS, SCSS, JavaScript, and JQuery.
  • Experience in refactoring monolithic applications into microservices and integrating emerging enterprise services.
  • Familiarity with container orchestration and deployment best practices.
  • Strong problem-solving skills and excellent written and verbal communication abilities.
  • U.S. Citizenship and must possess an active TS/SCI security clearance or a TS clearance with SCI eligibility.

#LI-BG1

#MTSI
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.