DESCRIPTION:
Duties: Ideate, scope, plan, implement, and launch event-driven and data-processing based software solutions for Payments products. Collaborate with cross-functional teams to gather business requirements, analyze, and provide technical architecture considering scalability, performance, and evolvability. Design robust software systems for a given set of business requirements, present to stakeholders, and drive to execution. Incorporate Behavior Drive Development (BDD) principles with BDD tests, unit tests, and integration tests when driving the development of said designs. Collaborate with infrastructural teams to drive the team's infra requirements and arrive at maintainable solutions. Conduct comprehensive performance testing using Blazemeter, analyze results, and propose enhancements. Triage, debug, and resolve production issues. Propose and design scalable data processing applications for very large transaction volumes. Monitor and optimize data pipelines and processes by incorporating industry best practices to improve performance and scalability. Provide mentorship and technical guidance to junior engineers across the organization.
QUALIFICATIONS:
Minimum education and experience required: Master's degree in Computer Science or related field of study plus 1 years (12 months) of experience in the job offered or as Software Engineer, Java Engineer, or related occupation. The employer will alternatively accept a Bachelor's degree in Computer Science or related field of study plus 3 years (36 months) of experience in the job offered or as Software Engineer, Java Engineer, or related occupation.
Skills Required: This position requires experience with the following: Designing, architecting, and building scalable, available, and fault-tolerant Event-driven microservices in AWS Cloud using Java, Springboot, Webflux, Monetaboot, Aurora PostgreSQL, Apache Kafka, Terraform, and AWS MSK and Reactive Programming; Designing, building, and integrating high throughput real-time data streaming applications using Spark Structure Streaming, Airflow, Parquet, Avro, Glue Schema Registry, and S3; Designing, building, and integrating high throughput Payment Processing and Ledgering Applications using PySpark, SparkSQL, S3, AWS Glue, Aurora MySQL, Glue Data Catalog, Airflow, and Avro; Designing and building software for performing and validating Double-entry Bookkeeping for payment transactions and enabling funding to merchants; Building and performing automated Functional testing using Cucumber, Performance testing using Blazemeter, Unit testing using Junit and Pytest, and User Acceptance Testing; Designing and developing Behavior Driven Development Tests to cover functional use cases; Improving scalability and efficiency of Spark applications using Spark system architecture, industry best practices, and scalability patterns; Developing, enhancing, and executing regression test scripts in Python for functional and infrastructural test scenarios; Designing and implementing AWS Step Function orchestration pipelines for state machine flows; Defining workflows, managing state transitions, and integrating AWS Lambda, AWS Glue, and AWS Event Bridge services; Automating the build, test, and deployment processes in AWS multi-region environments using Jenkins, Spinnaker, and Jules; Deploying, managing, and scaling containerized applications using Kubernetes, including orchestration, service discovery, and automated deployment processes to ensure efficient and reliable software operations; Incorporating observability into software during design and development for monitoring, alerting, and maintenance of applications post go live; Debugging and identifying root causes for functional and infrastructural issues using observability tools including Splunk, Datadog, and Grafana; Guiding projects from inception through deployment using Agile SDLC practices.
Job Location: 8181 Communications Pkwy, Plano, TX 75024.
Full-Time.