
Senior Software Developers collaborate with Business and Quality Analysts, Designers, Project Managers and more to design software solutions that will create meaningful change for our clients. They listen thoughtfully to understand the context of a business problem and write clean and iterative code to deliver a powerful end result whilst consistently advocating for better engineering practices. By balancing strong opinions with a willingness to find the right answer, Senior Software Developers bring integrity to technology, ensuring all voices are heard.
For a team to thrive, it needs collaboration and room for healthy, respectful debate. Senior Developers are the technologists who cultivate this environment while driving teams toward delivering on an aspirational tech vision and acting as mentors for more junior-level consultants. You will leverage deep technical knowledge to solve complex business problems and proactively assess your team’s health, code quality and nonfunctional requirements.
Job responsibilities
- You will learn and adopt best practices like writing clean and reusable code using TDD, pair programming and design patterns
- You will use and advocate for continuous delivery practices to deliver high-quality software as well as value to end customers as early as possible
- You will work in collaborative, value-driven teams to build innovative customer experiences for our clients
- You will create large-scale distributed systems out of microservices
- You will collaborate with a variety of teammates to build features, design concepts and interactive prototypes and ensure best practices and UX specifications are embedded along the way.
- You will apply the latest technology thinking from our Technology Radar to solve client problems
- You will efficiently utilize DevSecOps tools and practices to build and deploy software, advocating devops culture and shifting security left in development
- You will oversee or take part in the entire cycle of software consulting and delivery from ideation to deployment and everything in between
- You will act as a mentor for less-experienced peers through both your technical knowledge and leadership skills
Job qualifications:
Technical Skills
- You have experience using one or more development languages (Java, Nodejs, React, TypeScript, JavaScript, etc.) with experience in Object-Oriented programming
- You can skillfully write high-quality, well-tested code and you are comfortable with Object-Oriented programming
- You are comfortable with Agile methodologies, such as Extreme Programming (XP), Scrum and/or Kanban
- You have a good awareness of TDD, continuous integration and continuous delivery approaches/tools
- Bonus points if you have working knowledge of cloud technology such as AWS, Azure, Kubernetes and Docker
Professional Skills
- You enjoy influencing others and always advocate for technical excellence while being open to change when needed
- Presence in the external tech community: you willingly share your expertise with others via speaking engagements, contributions to open source, blogs and more
- You’re resilient in ambiguous situations and can approach challenges from multiple perspectives
Other things to know:
Learning & Development
There is no one-size-fits-all career path at Thoughtworks: however you want to develop your career is entirely up to you. But we also balance autonomy with the strength of our cultivation culture. This means your career is supported by interactive tools, numerous development programs and teammates who want to help you grow. We see value in helping each other be our best and that extends to empowering our employees in their career journeys.

About Thoughtworks
About
Founded in 1993, we’ve grown from a small team in Chicago to a leading software consultancy of more than 8000 Thoughtworkers in 17 countries. Our cross-functional teams of strategists, developers, data engineers, and designers bring over two decades of global experience to every partnership.
Thoughtworks invented the concept of distributed agile and we know how to harness the power of global teams to deliver software excellence at scale. Today we help our clients to create their own path to digital fluency and to build organizational resilience to navigate the future.
Our job is to foster a vibrant community where people have the freedom to make an extraordinary impact on the world through technology.
As a Thoughtworker, you are free to seek out the most ambitious challenges. Free to change career paths. Free to use technology as a tool for social change. Free to be yourself.
Company video


Connect with the team
Similar jobs
Greetings from Wissen Technology!
We are hiring Java Developers for Mumbai location.
Exp - 4 - 8 years
Location - Mumbai (Goregaon) - Hybrid
Notice Period - immediate or serving notice period only
Interview Process - Initial rounds virtual + Final round F2F
Software Engineer/Senior Software Engineer/Lead Engineer-Java
· Experience in Core Java 5.0 and above, Data Structures, OOPS, Multithreading, Algorithms, Collections, Unix/Linux
· Possess good architectural knowledge and be aware of enterprise application design patterns.
· Should have the ability to analyse, design, develop and test complex, low-latency client-facing applications.
· Good development experience with RDBMS
· Good knowledge of multi-threading and high volume server side development
Basic working knowledge of Unix/Linux
· Excellent problem solving and coding skills in Java
· Strong interpersonal, communication and analytical skills.
· Should have the ability to express their design ideas and thoughts.
Job Brief-
· Understand product requirements and come up with solution approaches
· Build and enhance large scale domain centric applications
· Deploy high quality deliverables into production adhering to the security, compliance and SDLC guidelines
Responsibilities:
● Design, develop, test, and maintain software applications using Java technologies.
● Implement robust solutions using Spring MVC, Spring Boot, and Hibernate frameworks.
● Develop and optimize database operations with MySQL.
● Analyze and solve complex problems by applying knowledge of data structures and algorithms
Requirement -
Programming Languages & Technologies: Strong knowledge of Java (Core Java, Java 8+).
● Frameworks: Proficiency in Spring MVC, Spring Boot, and Hibernate. ● Algorithms and Data Structures: Good understanding and practical application of DSA concepts.
● Databases: Experience with MySQL – writing queries, stored procedures, and performance tuning.
● Version Control Systems: Experience with tools like Gi
● Develop, test, implement and maintain application software
● Take part in software and architectural development activities
● Debug application issues and helping support respond to client queries
● Participate in application development meetings
● Provide accurate estimates, clearly communicate status of tasks and
identification of risks
● Commitment to accomplishing the task at hand and identify the fastest and
most reliable way to solve a problem
● Performance tuning of application code at different service levels
● Interact with customers of the application and help address issues reported
ESSENTIAL SKILLS / EXPERIENCE REQUIRED:
● Bachelor's degree in Computer Science or equivalent
● 1- 6 years of experience with Java and J2EE/Java EE
● Experience with Spring and Hibernate/ ORM
● understanding of relational database and normal forms
● understanding of SQL concepts and ability to write optimised and high
performing queries
● Strong understanding of Java concurrency, concurrency patterns, experience
building thread safe code
● Experience building RESTful web services
● Experience with web application servers like JBoss
● Strong written and verbal communication skills
● Strong interpersonal skills and time management skills
● Strong problem solving and analytical skills
● Experience using task tracking version control systems e.g. Jira and Git
● Understanding of testNg/JUnit
● Experience with NoSQL Database is a plus
● Experience with CI/CD pipeline like Jenkins, containerisation tools like
docker/kubernetes is a plus
Requirements
Client: MNC (WFO)
Role: DOT NET DEVELOPER
Exp: 4 years to 6 years
CTC : UPTO 30 lpa.
NOTE:Serving notice period (30days/immediate joiner.
Candidates from Bangalore location only apply.
- Hands-on working knowledge and experience is required in:
- Extensive experience working on C#, .net and .net core frameworks
- Relational Databases (SQL Server, Oracle, PostgreSQL, etc.)
- NoSQL Databases (Mongo, Cloud Spanner, etc.)
- Agile Methodologies (Scrum, TDD, BDD, etc.)
- Experience working with distributed teams across regions and time zones
- Strong organizational skills
- Display detailed, critical, quality-oriented, skeptical thinking about the product
- Experience with several of the following tools/technologies is desirable:
- GIT, Jira, Jenkins, SharePoint, Visual Studio Code.
- Microservices Architecture, Domain Driver Design, Test Driven Development is a bonus
- Design Patterns and implementing the Design Patterns
- Development of Complex Application and System Architectures
- Data Structures and Algorithms using Typescript, C# and .NET
- Experience working in Google Cloud will be a big bonus as all our systems are in the Cloud
- Knowledge of REST and gRPC API’s is a bonus
- Knowledge of the following technologies is a plus:
- Continuous Integration and Continuous Delivery Tools like GitHub, Git, etc.
- Containerization Technologies (Docker)
Are you a high-performing, collaborative, results oriented and technologically savvy person who is keen on sales in the digital industry? Then this highly visible role is for you!
Our client is the Health-tech initiative of India's largest business house. Started in 2015, it empowers healthcare providers and consumers in India. All healthcare monitoring services are made available through an app that will help connect doctors, hospitals, pharmacies, laboratories and consumers, enabling preventive and predictive healthcare. It helps the care-givers to track the entire patient journey from the initial appointment and maintaining their records, generating lab test reports to providing virtual consultation and home-care solutions. It is expected that this futuristic guide will strengthen doctor-patient relationship and enhance the in-clinic experience.
As the Java Developer, you will be responsible for developing cutting edge health-tech applications that include high scale transaction processing, intelligent bot based programs and data analytics.
What you will do:
- Building components for the company's advanced health tech platform using Java, Solr, SpringBoot, DialogFlow
- Communicating effectively in a cross-functional product development team and present ideas and solutions effectively
- Participating in technical planning and requirements gathering phases including design, code, test, troubleshoot, and document engineering software applications
- Developing the Code as per the requirements
- Working with product team and constructing the tech roadmap
- Designing, building and scaling the company's backend microservices
- Maintaining code integrity and organization
- Applying all quality requirements to make the code production ready
- Developing and deploying new features to facilitate related procedures and tools if necessary
- Developing documentation related to technical aspects and to facilitate current support, development, upgrades, or migrations
- Designing and building efficient, reusable, and reliable Java code
- Pro actively catching and fixing bugs, and providing support for the back end services
- Managing servers and infrastructure by keeping the lights on and refining the deployment architecture
What you need to have:
- Expert at hands on programming in JAVA and J2EE
- Must be from Product based companies (Should have developed Web Apps)
- Proven expertise in Java interfaces with MongoDB (or similar noSQL databases) as well as relational databases (mySQL, Postgres etc)
- Key contributor in atleast one 6+ months development project involving SpringBoot and Hibernate
- Strong understanding of application server infrastructure
- Good working knowledge of Maven based build systems
- Good understanding of build and deployment pipelines that involve ANT and Jenkins
- Proficient understanding of code versioning tools, such as Git or SVN
- Good knowledge of working on Rest APIs , Webservices
- Excellent problem-solving skills
- Hands on experience with Lucene/Solr
- Familiarity with DiagFlow based chat bot building
- Knowledge of NLP
- Learnt AI/ML systems
- Excellent interpersonal skills and the ability to build good working relationships.
- Must be self-motivated to prioritize and manage workload and meet critical project milestones and deadlines.
- Able to effectively collaborate with a team as well as take initiative and work independently to solve problems
. 4 years of software development engineering.
. Understanding of fundamental design principles (including MVC).
. Good hands on in AWS scalable environment.
. Experience with different RDBMS and No SQL databases like MySQL, mongo, etc.
. Experience in designing scalable micro-services required.
. Strong knowledge of CS fundamentals including data structures, algorithm design and complexity analysis.
. Proficiency in one language that emphasizes class abstractions (for e.g. Java) and have coded in it for at least 2 years. Python will be a plus.
. Excellent communication, analytical and problem solving skills.
. Strong organizational skills and the ability to prioritize and work with clients with great efficiency.
. Excellent written and oral communication and presentation skills and the ability to express thoughts logically
and succinctly.
. Open minded, Team builder, Good communicator and ability to lead and inspire teams.
. Demonstrated ability to achieve stretch goals in a highly innovative and fast paced environment.
. Experience in dealing with ambiguous/undefined problems; ability to think abstractly.
Responsibilities
- Work with the architect in identifying modules, interfaces, functionality to be developed
- Participate in the entire application lifecycle, focusing on coding and debugging
- Write clean code to develop functional web application, addressing technical and design requirements
- Understand and implement heuristic algorithms as necessary
- Troubleshoot and debug applications
- Create and maintain upto date documentation
- Collaborate with Front-end developers to integrate user-facing elements with server side logic
- Provide training and support to internal teams
- Build reusable code and libraries for future use
- Liaise with developers, architects, designers and system administrators to identify and incorporate new features
Requirements
- Proven work experience in Java as a Back-end developer
- In-depth understanding of the entire web development process (design, development and deployment)
- Hands on experience with programming languages like https://resources.workable.com/back-end-developer-job-description" target="_blank">Java and Python
- Hands on experience in relational and non relational databases
- Working knowledge of CMS framework
- Familiarity with front-end languages (e.g. HTML, JavaScript and CSS)
- Excellent analytical and time management skills
- Teamwork skills with a problem-solving attitude
- BE/ MS degree in Computer Science or relevant field








