DESCRIPTION:
Duties: Design, develop and implement software solutions. Solve business problems through innovation and engineering practices. Involved in all aspects of the Software Development Lifecycle (SDLC) including analyzing requirements, incorporating architectural standards into application design specifications, documenting application specifications, translating technical requirements into programmed application modules, and developing or enhancing software application modules. Identify or troubleshoot application code-related issues. Design and develop microservices and ensure the reliability, security, and performance of the microservices. Implement RESTful APIs for communication between microservices. Take active role in code reviews to ensure solutions are aligned to pre- defined architectural specifications. Assist with design reviews by recommending ways to incorporate requirements into designs and information or data flows. Design and implement Kerberos Authentication mechanism. Implement domain logic and business rules. Develop and automate large-scale, high-performance data processing systems to drive and improve product experience. Develop and maintain CI/CD pipelines. Design, develop, and deploy cloud-native applications on cloud platforms. Implement infrastructure as code (IaC). Collaborate with cross-functional teams to ensure successful product delivery. Perform exploratory data analysis within large enterprise databases to extract, clean, transform, and load data. Develop and implement user interfaces according to designs and specifications. Build reusable code libraries for future use. Participate in project planning sessions with project managers, business analysts, and team members to analyze business requirements and outline proposed solutions.
QUALIFICATIONS:
Minimum education and experience required: Master's degree in Computer Science, Computer Engineering, or related field of study plus 3 years (36 months) of experience in the job offered or as Software Engineer, Technology Consultant, System Engineer, or related occupation.
Skills Required: This position requires three (3) years of experience with the following: Java development and object-oriented programming principles; Java frameworks including Spring, Spring Boot, Spring Batch, and Hibernate; relational databases including Oracle or PostgreSQL; version control systems including Git; UI development using technologies including Angular, Redux, React JS, HTML5, CSS3, JavaScript, and TypeScript; developing and deploying applications on AWS platform and PCF; Object oriented programming language including Java/J2EE; CI/CD pipelines and automation tools including Jules or spinnaker; eventing tools including Kafka; testing frameworks including JUnit and cucumber; NoSQL databases including MongoDB and Cassandra; Test-Driven Development (TDD) and Behavior-Driven Development (BDD); UI/UX principles and best practices; Agile methodologies and tools including Jira or Trello; developing and maintaining CI/CD pipelines using tools like Jenkins, Spinnaker, GITLab CI/CD and AWS Code Pipeline; developing software utilizing Maven or Gradle to resolve application dependencies; designing applications using Domain-Driven-Design principles and practices. This position requires two (2) years of experience with: containerization technologies including Docker and Kubernetes; laC tools including terraform and CloudFormation; and serverless computing including AWS Lambda; designing and developing AWS resources including EC2, S3, RDS, and EKS; integrating GraphQL with various data sources and APIs and data analytics and big data technologies including AWS EMR or AWS Glue; implementing domain logic and business rules using Rule Engine and Drools; implementing infrastructure as code (laC) using tools like Terraform, CloudFormation.
Job Location: 8181 Communications Pkwy, Plano, TX 75024.