Senior Software Engineer - Performance Testing [T500-21971]
lululemon · Bengaluru, Karnataka, India
Apply & track with Apply EdgeWho we are:Founded in 1998 at Vancouver, lululemon is a performance and lifestyle product company that create transformational products and experiences that build meaningful connections, unlocking greater possibility and wellbeing for all. We are driven by our brand purpose to elevate human potential by making individuals feel their best which helps us design our products with high filter and high style. We use a unique product creation methodology called Science of Feel in all our products to offer convenient, comfortable, and long-lasting experience. We owe our success to our innovative products, commitment to our people, and the incredible connections we make in every community we're in.Senior Software EngineerCore Responsibilities:As a Senior Engineer, you will bring a high level of technical knowledge as well as strong mentoring abilities. You will be counted on as a leader in your technology space as you contribute to all areas of development and operations (pre-production to production). You will work closely with a Technology Manager, using your experience and knowledge to guide a team of Engineers though their day-to-day process, and provide a central escalation point for production concerns. You will be part of an Agile production release team and may perform on-call support functions as needed. As a Senior Engineer I, you would be a primary caretaker of production systems and would maintain a deep understanding of how delivered products are functioning.Are a main contributor in Agile ceremoniesProvide mentorship and facilitate engineering training for a team of EngineersPerform and delegate engineering assignments to ensure production readiness is maintainedConduct research to aid in product troubleshooting and optimization effortsConduct research to guide product development and tools selectionProvide an escalation point and participate in on-call support rotationsActively monitor key metrics and report on trendsParticipate in our Engineering Community of PracticeContribute to engineering automation, management or development of production level systemsContribute to project engineering design and standards verificationPerform reliability monitoring and support as needed to ensure products meet guest expectations.Qualifications:Completed bachelor’s degree or diploma (or equivalent experience) in Computer Science, Software Engineering or Software Architecture preferred; candidates with substantial and relevant industry experience are also eligible8 – 13 years of engineering experienceCollaborate with onshore and offshore resources and ensure alignment on prioritiesCollaborate with a cross functional team to develop performance designs, test strategies and plans. Identify performance bottlenecks across all tiers, components, layers.Conduct performance and capacity optimization analysis and studies to improve the effectiveness of applications.Understand the architecture of applications and technology stack to recommend appropriate strategies and ensure the system performance is within defined SLAs.Experience in identifying potential failures / impact and setting up failure simulation scenarioIn-depth understanding of distributed systems, microservices architecture, and containerization technologies (such as Docker and Kubernetes)Knowledge of Resiliency design pattern and its best practices – Circuit breaker, Timeout/ Time limit, Retry, Bulkhead, Fall back etc.Knowledge of best practices in software development, testing, and deployment, including CI/CD pipelines and automation toolsAnalysis and resolution of critical and complex application issues (crashes, hung threads, memory leaks, etc.) and performance tuning based on RCA.Excellent problem-solving skills, with the ability to troubleshoot complex issues and develop effective solutionsDevelop performance and test scripts to simulate real world scenariosConduct Proof of Concept for engineering and testing tools, and demonstrate feasibility of implementing the solution, with business justifications.Hands on experience of HA and DR simulationsStrong proficiency in any one of Industry standard chaos engineering tools (Chaos Monkey, Chaos Toolkit or Gremlin or Litmus, etc.) and experience in customizing / building chaos tools using Python or any other scripting / programming languageHands-on experience in analyzing and measuring MTTD/ MTTR from industry trending monitoring and incident management toolsStrong communication and collaboration skills, with the ability to work effectively in a fast-paced, team-oriented environmentMonitor all infrastructure and systems installations, including configuration, testing, and maintenance for uninterrupted operations.Build tools to automate managing IT Operations including CI/CD, Monitoring/Alerting, Incident response Qualifications:Bachelor's Degree in IT Engineering, Computer Science with 8-14 years’ experience8+ years’ experience with testing frameworks (ideally JMeter or LoadRunner)8+ years of experience in chaos engineering, Resiliency validation engineering8+ years’ experience in a team leadership role5+ years testing experience for SaaS based productsExperience with APM tools such Datadog, Dynatrace, etc. and monitoring tools like Prometheus, Grafana, Splunk etc. across Windows and UNIX platforms, AWS Cloud & KubernetesExperience with integrating performance testing / monitoring into CI/CD Pipelines with GitLabMust have: Strong understanding of basic programming concepts and data structurePrevious experience working as an SRE, or similar role is good to haveAbility to work in a fast-paced environmentWillingness to learn new technologiesAnalytical and logical thinkerPassion for quality and relentless improvement