If you're a Junior or Intermediate level Software Engineer with 3-5+ years of experience in Java, and Spring, and you have a passion for developing mission-critical software solutions, VES, LLC has an exhilarating opportunity for you. Join our dynamic team at the forefront of technology innovation, dedicated to providing cutting-edge software solutions for the defense industry, including the US Army Mission Command systems. At VES, we're not just building software; we're shaping the future.
You'll be working on the Server Core team which is responsible for the Business Logic Layer (BLL) of a US Army Fire Support Command and Control system. This team develops runtime extensible Spring Boot microservices that exposes REST-based and message-based APIs that house the BLL implementation for several key services for our system. This is a remote role, but ideal candidates will be located near MD or NJ.
ABOUT VES, LLC
We are a small business headquartered out of Aberdeen Proving Ground, MD. We have grown up to 80 employees, many of them getting our footprints established in other areas of the United States. This particular role will support our team in Picatinny Arsenal, NJ. Established in 2014, our core competencies are the development of custom government off the Shelf (GOTS) infrastructure solutions, integrating mission command systems, and prototyping emerging technologies for use in the Army tactical architecture. We are a company built entirely of engineers, focused completely on solving the DoD's hardest software systems integration challenges.
Many software government contractors only hire to fill a slot and then release the person with the contract time is up. We truly strive to be more of a close-knit group, hiring people for their talent and making sure they want to stay for the long haul. We offer highly competitive pay, generous benefits, and a friendly work culture.
General Job Duties:
Build Java-based services that enable users to manage tactical data supporting a Common Operating Picture and Fire Support capabilities
Build and maintain reusable components as part of our service layer
Develop, test, and manage software as directed and determined by the project lead
Develop software leveraging the SpringBoot Java Framework
Work on efforts where there's a core team delivering capabilities to other development teams to extend and integrate.
Work on applications and components that integrate with COTS messaging solutions such as RabbitMQ
Maintain and improve the performance of existing software solutions
Clearly and regularly communicate with management and technical support colleagues
Recommend improvements to existing software solutions as necessary
Work closely with the customer and other stakeholders to understand requirements and design software solutions to meet their needs.
Required Skills:
Experience developing RESTful services using the Spring Framework / SpringBoot
Develop and maintain APIs using Spring Boot components including:
Spring REST Controllers
Spring Web / Spring MVC
Spring Validation
Spring Security (authentication/authorization patterns)
Spring Data JPA / Hibernate
Experience implementing complex mapping logic using MapStruct features such as:
Custom mappers and expressions
Nested object mappings
Enum/value translations
AfterMapping / BeforeMapping hooks
Mapping inheritance and reusable mapping configurations
Solid problem-solving and debugging ability. Must be comfortable using a debugger.
Solid CS fundamentals including object orientation, data structures, advanced algorithms, complexity, automata, operating system fundamentals, computer architecture, and systems analysis and design
Familiarity with professional software engineering practices for the full software development life cycle, including requirements elicitation, coding standards, code reviews, source control management, agile development, build processes, testing, and operations
Experience using Git (or a Git-based implementation, e.g. Stash, Bitbucket, Github) in a collaborative production environment-especially on a large-scale software project
Experience using Jenkins, Gradle and Maven
Published software projects for external consumption, or have made significant contributions to existing open-source projects
Experience with the Agile or Scrum development methodology
Experience working as part of a software development team
Experience with Atlassian products (Jira, Bitbucket/Stash, Nexus)
Experience with continuous integration or build automation (e.g. Jenkins, Bamboo)
Experience managing project SDKs.
Proficiency in testing methodologies and popular testing frameworks.
Excellent problem-solving skills.
Strong communication and teamwork skills.
Ability to work independently and in a team-oriented environment.
Desired Skills:
Strong proficiency in Java
Experience with the Spring framework.
Proven experience in building RESTful web services.
Experience using a profiler to debug performance issues
Experience with Atlassian (JIRA, Confluence).
Required Education and Experience:
Bachelor's degree in Computer Science, Software Engineering, or related field (or equivalent work experience).
3-5+ years of professional experience in software development.
Ability to obtain and maintain a Security Clearance.
Excellent oral and written communication skills with respect to all the above requirements.
VES offers a rich benefits package that includes:
401(k) match
Highly Competitive Salary
Up to 15 Paid Vacation days / year
11 Paid Holidays
Flexible work/life balance culture
VES is an equal opportunity employer and all qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, disability status, protected veteran status, or any other characteristic protected by law.