Software Dev Engineer III

Category: Information Technology

Location: Bengaluru, KA, India

India


Software Dev Engineer III

Bengaluru, KA, India

Add to basket Share Apply

Company Description

Tesco Bengaluru: We are a multi-disciplinary team creating a sustainable competitive advantage for Tesco by standardising processes, delivering cost savings, enabling agility, providing cutting-edge technological solutions and empowering our colleagues to do ever more for our customers. With cross-functional expertise in Global Business Services and Retail Technology & Engineering, a wide network of teams and strong governance we reduce complexity thereby offering high quality services for our customers. Tesco Bengaluru, established in 2004 to enable standardisation and build centralised capabilities and competencies, makes the experience better for our millions of customers worldwide and simpler for over 4,40,000 colleagues.
Tesco Technology consists of people from a number of different backgrounds, but having a common purpose to serve our shoppers a little better every day with our retail technological solutions. We shared a common interest in harnessing innovations in technology to enhance their shopping experience at Tesco stores. Whether making products, software or systems, our teams focuses on various aspects from taking strategic ownership of the architecture to delivering technological solutions such as design, testing, deployment, infrastructure, operation and security of the systems to ensure agile, smooth and safe operations. These help us to deliver the maximum business impact. Teams refine their internal processes to best fit their own needs, working to build core capabilities in application and services. We collaborate globally across teams to build end-to-end customer-facing solutions, as well as to share knowledge, experience, tools and techniques.
At Tesco, inclusion means that Everyone?s Welcome. Everyone is treated fairly and with respect; by valuing individuality and uniqueness we create a sense of belonging.
Diversity and inclusion have always been at the heart of Tesco. It is embedded in our values: we treat people how they want to be treated. We always want our colleagues to feel they can be themselves at work and we are committed to helping them be at their best.
Across the Tesco group we are building an inclusive workplace, a place to actively celebrate the cultures, personalities and preferences of our colleagues ? who in turn help to build the success of our business and reflect the diversity of the communities we serve.

Additional Information

Important Notice: 

On behalf of Tesco Bengaluru, we must caution all job seekers and educational institutions that Tesco Bengaluru does not authorise any third parties to release employment offers or conduct recruitment drives via a third party. Hence, beware of inauthentic and fraudulent job offers or recruitment drives from any individuals or websites purporting to represent Tesco. Further, Tesco Bengaluru does not charge any fee or other emoluments for any reason (including without limitation, visa fees) or seek compensation from educational institutions to participate in recruitment events. 

Accordingly, please check the authenticity of any such offers before acting on them and where acted upon, you do so at your own risk. Tesco Bengaluru shall neither be responsible for honouring or making good the promises made by fraudulent third parties, nor for any monetary or any other loss incurred by the aggrieved individual or educational institution. 

In the event that you come across any fraudulent activities in the name of Tesco Bengaluru, please feel free report the incident at recruitment_compliance_india@tesco.com 

Job Description

* Take a business problem and come up with the technical strategy (push vs pull etc real-time vs batches sync vs async) within the team high-level design and lead the implementation 
* Need minimal directions or guidance and collaborate with SDEs across teams working on the same or similar business problem 
* You showcase exemplary behavior in your work – your design delivery code processes all set examples for your team 
* Influence your team’s technical and business strategy by suggesting novel approaches 
* Able to communicate your ideas and get feedback from different stakeholders and drive convergence to achieve the right outcomes 
* Proactively mentor the rest of the team and help in hiring 
* Ensure design or architectural deficiencies are addressed and routinely simplify integration of your peer teams with your team’s software 
* Consistently lead the delivery of valuable features 
* Continually propose and drive process improvements 
* Help elaborate requirements where necessary 

Programming 
* Demonstrate in depth knowledge of IDE language and toolset in language of choice. 
* Implement critical path components in a large or complex or project. 
* Demonstrate excellent understanding of language & framework and a good working knowledge of the abstraction layer underneath 
* Profile and optimize code 
* Understand threads threading model and concurrent programming 
* Comfortably test drive any feature/comfortable with TDD cycle 
* Demonstrate a good knowledge of other programming languages & paradigms and when to apply them 
* Comfortably debug/find complex problems 

Design 
* Identify and apply appropriate design patterns to problems 
* Comfortably develop large features 
* Understand Idempotence 
* Actively practice the boy scout principle leaves design  code in a better state than when arrived 
* Demonstrate a good understanding of cohesion SOLID and how to apply 
* Understand the importance of domain model and can coherently model a problem domain within a given context 
* Anticipate medium-term (3-6 month) vectors of change and designs and abstracts accordingly  
* Understand and appreciate the simplicity and the value of removing code 
* Understand design patterns such as CQRS and eventual consistency 
* Understand how to design for performance at all levels 

Development Practice 
* Automate everything by default 
* Build a CI/CD pipeline 
* Automate security scanning and performance testing as part of the build 

Infrastructure 
* Demonstrate a good grasp of multiple operating systems 
* Demonstrate a good grasp of scripting techniques 
* Demonstrate expertise in one database & good grasp of multiple data storage paradigms and when to apply other technologies 
* Understand and can automate PaaS technologies 
* Understand when to apply appropriate infrastructure technologies 

Security 
* Write secure code by default 
* Use tools to perform deep security probes 
* Understand server hardening 

Behaviours & Collaboration
* Lead group discussions on the design of particular areas
* Comfortably present information
* Gain buy in from team and drive design
* Mentor and develop those around them
* Understand domain well enough to work with PO to drive value
* Share knowledge with the wider community

Innovation
* Comfortably evaluate new tools
* Produce POCs to establish the usefulness of new tools
* Understand when new tools may not be appropriate
* Introduce new tools and methodologies when appropriate to simplify or increase the efficiency of development

Technology Understanding
* Understand advanced HTTP features (Caching appropriate use of verbs).
* Deep understanding of distributed architecture scaling replication and sharding concepts and their applicability to the product being developed 

Qualifications

Java Spring boot Micro services Azure/AWS Any noSQL database Kafka or any other eventing tools
Back to top