What are the responsibilities and job description for the Software Engineer - Document Generation position at VDart, Inc.?
Title: Software Engineer - Document Generation
Location: Charlotte, NC (Hybrid)
Type: Contract
Project Environment
- Over 80% of the role involves building new enterprise software applications
- Highly complex systems designed for extreme scale and high throughput
- Modular, microservices based architecture with configurable, workflow driven orchestration
- Runs on OpenShift (OCP) cloud platforms
- Databases include MongoDB, PostgreSQL, SQL server
- Document generation using OpenText Exstream including Exstream Cloud Native
- Core technologies include Java, Spring, Hibernate, JPA, Kafka, Avro, Apigee, and orchestration services
- Strong emphasis on automated testing using JUnit, Karate, Cucumber, TDD, and BDD
- High availability and resiliency patterns including circuit breakers, feature toggles (Harness), blue green deployments, and CI/CD
- Observability and monitoring via Grafana and AppDynamics
- Supports critical document delivery infrastructure across Linux, Windows, and OpenShift platforms
Upcoming Initiatives
- The team is actively supporting modernization and migration efforts, including:
- Migrating legacy mainframe applications to OpenShift
- Electronification and modernization of document delivery platforms
- Migrating Linux and Windows servers running OpenText Exstream from legacy data centers to new data centers
- Server and application migration activities
- Middleware patching and platform upgrades
- Ongoing UI maintenance and enhancements
- Operational stability, performance tuning, and production support during and after migration
Key Responsibilities
- Participate in end to end SDLC activities including design, development, testing, deployment, and production support
- Design, develop, and support applications related to document composition, generation, and delivery
- Perform application side administration on Linux, Windows, and OpenShift environments
- Support and enhance Java based full stack applications
- Collaborate in an Agile environment aligned with Technology SDLC standards
- Work across multiple platforms and technologies while managing multiple priorities
- Partner with infrastructure, platform, and QA teams to ensure availability, resiliency, and performance
- Contribute to automation, monitoring, and deployment best practices
Core Qualifications
- Senior level software engineering experience with strong SDLC fundamentals and Agile delivery
- 8 years Java full stack development experience, including Java, Spring / Spring Boot, Hibernate, and JPA
- 3 years OpenText Exstream batch and real time server administration
- 3 years Cloud native/containerized platforms: OpenShift (OCP), Docker, Kubernetes, Helm
- Experience with SQL and relational databases, including PostgreSQL and/or SQL Server
- Linux and Windows application side administration
- Shell scripting experience (KornShell or Bash)
- Experience working in large scale, high volume enterprise systems
Preferred / Nice to Have
- UI development experience using Angular and/or React
- Distributed systems and messaging using Kafka with Avro
- Middleware and API platform experience (Apigee)
- DevOps and deployment practices including blue green deployment strategies, Liquibase, feature toggles (Harness), and circuit breaker patterns
- Test automation using JUnit, Karate, Cucumber, TDD, and BDD
- Observability and performance monitoring using AppDynamics and Grafana
- Strong front end architecture and development experience using modern frameworks and technologies such as React or Angular, JavaScript/TypeScript, HTML, and CSS, with an emphasis on building secure, scalable enterprise user experiences
- Experience with Generative AI solutions, including large language models (LLMs), agent based frameworks, or orchestration patterns, particularly as applied to enterprise document generation and backend platform integration, with a focus on security, resiliency, and operational readiness
Soft Skills and Expectations
- Ability to work effectively in a fast paced, dynamic environment
- Strong collaboration and communication skills
- Comfortable supporting multiple applications and competing priorities
- Proactive mindset with a strong focus on stability, quality, and continuous improvement