Lead Software Engineer (Java)

Wawa

Job Title: Lead Software Engineer - Backend
Location: Corporate
Department: Information Technology
FLSA: Exempt
Band: Specialist
Job Last Reviewed: Aug 2021
Job Summary: The Backend Technical Lead will be actively involved in leading the design, development and support of backend systems within Wawa. As a technical lead in a given area, this role would work with appropriate product owners to define and design solutions to meet the business needs while working with and mentoring a team to implement the solution and ensure it continues to meet expectations.
Principal Duties:
· Operate as a key technical resource in an agile team, working with product owners and other team members to design and implement features that meet the business and technical requirements.
· Provide a leadership and mentoring role for other team members to continually improve the team and ensure that individuals grow with the organization.
· Complete technical designs as required that provide a detailed view of a solution and a solution ecosystem that can then be implemented and evolve as business and technical needs change.
· Decompose abstract business features into associated stories with the product owner to implement with the team using agile delivery.
· Define RESTful APIs and Domain Events using industry standards.
· Apply DevOps techniques to deliver code quickly and securely in a cloud-based PCI environment.
· Work with team members to define and implement test plans and automation using techniques like TDD and BDD.
· Operate in a cloud-based PCI regulated environment and collaborate with other teams to ensure security and security standards are always considered with every change.
· Participate in community of practice with other engineers to help drive the technical roadmap of the organization.
· Be responsible for ensuring performance metrics are maintained and performance SLAs are met. This includes designing and implementing performance test automation.
· Be responsible for monitoring and observability of owned systems including monitoring for abnormalities and alerting.
· Collaborating with L1/L2/L3 teams to drive a resolution and root cause analysis.
· Ensure all documentation is up to date to support teams and systems including designs, runbooks and developer guides.
· Stay up to date with relevant technologies and software development trends.
· Evaluate tools and platforms for fit and ensure the tools and platforms are supported and approved for use within Wawa.
Basic Qualifications:
  • Bachelor’s degree in Computer Science, Information Technology or a technical discipline preferred (e.g., engineering) or equivalent.
  • A minimum of 7 years experience of relevant experience
  • Polyglot knowledge of multiple programming languages with a focus on Java.
  • Fluent in multiple technologies (Frameworks, Java, JavaScript, SpringBoot, REST API, Graph QL, SQL, NoSQL, Graph DB’s, etc.).
Desired Qualifications:
  • Understanding of retail and retail systems and processes.
  • Understanding of SOLID and other OO design principles.
  • Knowledge and experience with building RESTful APIs that are secure, isolated and event driven.
  • Experience with OpenAPI and API first development.
  • Understanding of microservices architecture patterns pattern like Service Discovery/API Gateway/Domain Driven Design etc
  • Strong hands on usage of containers including tools like Docker, Kubernetes, Helm, ECS/ECR, OpenShift, LXC and other related technologies and tools.
  • Hands on knowledge of event driven architectures including technologies like Avro, Kafka, Kinesis as well as RabbitMQ/ActiveMQ.
  • Hands on with automated testing frameworks and tooling to support BDD, TDD and ATDD including Cucumber, Postman etc.
  • Knowledge and practical experience of database change management tools like but not limited to Liquibase and FlywayDB.
  • Knowledge and use of performance testing techniques as well as tools including k6, Gatling/Locust/JMeter.
  • Understanding of cloud IaaS technologies (AWS) including VPCs, Subnets, IAM, SG, RDS, MSK, EKS.
  • Experience with security mechanisms including mTLS, x509, OpenID Connect, JWT/JWE, OAuth2, PEP/PDP, SAML, WS-Security, Basic Auth and ABAC/RBAC based policies.
  • Experience with continuous delivery (CD) concepts including CodeFresh, Jenkins, GitLab, Travis CI, GoCD and others.
  • Experience with Linux scripting including Bash and KShell.
Subscribe Now