Software Development Engineer III
About the role
Software Development Engineers (SDEs) are the creative minds developing the software applications that make life easier for customers. Responsible for the entire development and support process for a software programme. Your applications make previously complex tasks simple with the impact ranging from saving time, effort or money to re-defining normal
You will be responsible for
- 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 behaviour 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 delivery of valuable features
- Continually propose and drive process improvements
- Help elaborate requirements where necessary
Programming
o Demonstrate in depth knowledge of IDE, language and toolset in language of choice.
o Implement critical path components in a large or complex or project.
o Demonstrate excellent understanding of language \& framework and a good working knowledge of
the abstraction layer underneath
o Profile and optimise code
o Understand threads, threading model and concurrent programming
o Comfortably test drive any feature/comfortable with TDD cycle
o Demonstrate a good knowledge of other programming languages \& paradigms and when to apply
them
o Comfortably debug/find complex problems Design
o Identify and apply appropriate design patterns to problems
o Comfortably develop large features
o Understand Idempotence
o Actively practice the boy scout principle, leaves design, code in a better state than when arrived o Demonstrate a good understanding of cohesion, SOLID and how to apply
o Understand importance of domain model and can coherently model a problem domain within a
given context
o Anticipate medium term (3-6 month) vectors of change and designs and abstracts accordingly o Understand and appreciate simplicity and the value of removing code
o Understand design patterns such as CQRS and eventual consistency
o Understand how to design for performance at all levels* ?Development Practice
o Automate everything by default
o Build a CI/CD pipeline
o Automate security scanning and performance testing as part of build Infrastructure
o Demonstrate a good grasp of multiple operating systems
o Demonstrate a good grasp of scripting techniques
o Demonstrate expertise in one database \& good grasp of multiple data storage paradigms and
when to apply other technologies
o Understand and can automate PaaS technologies
o Understand when to apply appropriate infrastructure technologies Security
o Write secure code by default
o Use tools to perform deep security probes o Understand server hardening
You will need
OS : Linux, Windows, MAC
- IDE : Eclipse, IntelliJ, Android Studio, Visual Studio Code
Languages : Java Spring Boot, Kotlin, Micronaut
Scripting : Python, Groovy
Unit Test : Junit , WireMock
Tools : JMeter, GitHub, Postman, Swagger, Bruno
WebServers : Tomcat, Jetty, Netty
Design Patterns : API Design patterns
Architecture Styles : MVC
Databases : MS SQL, Postgre SQL, CouchDB
- Monitoring and Logging Tools : Splunk, Newrelic, Prometheus, Grafana
Cloud Technologies : Azure or Similar
- CI/CD - Jenkins, Azure DevOps, Nexus, Ansible, Terraform
Integration Tools : Kafka, Knifi or Similar
Build Tools : Maven, Gradle
Whats in it for you?
At Tesco, we are committed to providing the best for you.
As a result, our colleagues enjoy a unique, differentiated, market- competitive reward package, based on the current industry practices, for all the work they put into serving our customers, communities and planet a little better every day.
Our Tesco Rewards framework consists of pillars - Fixed Pay, Incentives, and Benefits.
Total Rewards offered at Tesco is determined by four principles -simple, fair, competitive, and sustainable.
Salary - Your fixed pay is the guaranteed pay as per your contract of employment.
Leave \& Time-off - Colleagues are entitled to 30 days of leave (18 days of Earned Leave, 12 days of Casual/Sick Leave) and 10 national and festival holidays, as per the company’s policy.
Making Retirement Tension-FreeSalary - In addition to Statutory retirement beneets, Tesco enables colleagues to participate in voluntary programmes like NPS and VPF.
Health is Wealth - Tesco promotes programmes that support a culture of health and wellness including insurance for colleagues and their family. Our medical insurance provides coverage for dependents including parents or in-laws.
Mental Wellbeing - We offer mental health support through self-help tools, community groups, ally networks, face-to-face counselling, and more for both colleagues and dependents.
Financial Wellbeing - Through our financial literacy partner, we offer one-to-one financial coaching at discounted rates, as well as salary advances on earned wages upon request.
Save As You Earn (SAYE) - Our SAYE programme allows colleagues to transition from being employees to Tesco shareholders through a structured 3-year savings plan.
Physical Wellbeing - Our green campus promotes physical wellbeing with facilities that include a cricket pitch, football field, badminton and volleyball
Never pay to get work. If a listing asks for a fee, it is a scam. The ten signs →