Senior Software Engineer (java) - remote

Posted 3 years ago  • Media, PA

WAWA - Wawa, Inc. - Corporate Office

Job Description

Job Title: Sr. Software Engineer
Location: Corporate (Media, Pa)
Department: Information Technology

Job Summary: The backend engineer for the engineering team will focus on creating cross cutting engineering concerns to support the development of backend components as well as all the associated deployment and runtime infrastructure that allows them to function.

Principal Requirements:

  • Ability to define system requirements and create associated designs for implementation.
  • Polyglot knowledge of multiple programming languages including Java.
  • Strong knowledge of Spring Boot as well as the Spring ecosystem.
  • Hands on knowledge of event driven architectures including technologies like Avro, Kafka, Kinesis as well as RabbitMQ/ActiveMQ.
  • Testing frameworks including SpringBootTest, Junit, Postman, Pact, Cypress.
  • Strong understanding of the testing pyramid and testing techniques including TDD.
  • Strong hands on usage of containers including tools like Docker, Kubernetes, Helm, ECS/ECR, OpenShift, LXC and other related technologies and tools.
  • Strong API design experience including REST principles and REST API design standards and protocols.
  • Understanding of SOLID and other design principles.
  • Understanding of microservices architecture patterns pattern like Service Discovery/API Gateway/Domain Driven Design etc
  • Experience with multiple database categories including RDBMS, Document and Columnar
  • Knowledge and practical experience of database change management tools like Liquibase and FlywayDB.
  • Knowledge and us of performance testing tools including Gatling/Locust/JMeter.
  • Understanding of cloud IaaS technologies (AWS) including VPCs, Subnets, IAM, SG, RDS, MSK, EKS.
  • Understanding of infrastructure as code (IAC) concepts and usage.
  • Experience with security mechanisms including mTLS, x509, OpenID Connect, JWT/JWE, OAuth2, PEP/PDP, SAML, WS-Security, Basic Auth and ABAC/RBAC based policies.
  • Design for observability, all cloud and application components should be clearly instrumented from the ground up.
  • Experience with Open Trace, AWS Cloud Watch, DataDog, Prometheus, ELK, Grafana, Hystrix,, App Dynamics, NetCool and other tools to ensure the cloud is operating as expected.
  • Experience with continuous delivery (CD) concepts including CodeFresh, Jenkins, GitLab, Travis CI, GoCD and others.
  • Experience with Linux scripting including Bash and KShell.
  • Work with different teams within the organization to gain alignment with key design principals around the engineering tools and operations.
  • Conduct in-depth evaluations, diagnosing, troubleshooting and resolving a wide variety of complex technical issues.
  • Working knowledge of UI frameworks including ReactJS and UI to API interactions

Basic Qualifications:

  • Bachelor’s degree in computer science or a technical discipline (e.g. engineering) preferred
  • 7 to 10 years of relevant experience

Wawa will provide reasonable accommodation to complete an application upon request, consistent with applicable law. If you require an accommodation, please contact our Associate Service Center at asc@wawa.com or 1-800-444-9292.

Wawa, Inc. is an equal opportunity employer. Wawa maintains a work environment in which Associates are treated fairly and with respect and in which discrimination of any kind will not be tolerated. In accordance with federal, state and local laws, we recruit, hire, promote and evaluate all applicants and Associates without regard to race, color, religion, sex, age, national origin, ancestry, familial status, marital status, sexual orientation or preference, gender identity or expression, citizenship status, disability, veteran or military status, genetic information, domestic or sexual violence victim status or any other characteristic protected by applicable law. Unlawful discrimination will not be a factor in any employment decision