
- You have 3+ years of experience using Golang/ Go Programming development language.
- You can write clean, high-quality code in a variety of languages and are also able to spot (and improve) bad code
- You have experience with Agile, Lean and/or Continuous Delivery approaches such as Continuous Integration, TDD, Infrastructure as Code, etc.
- Bonus points if you have knowledge of cloud technology such as AWS, Docker or Kubernetes

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
Backend Architect
Experience - 12+ yrs
About Wekan Enterprise Solutions
Wekan Enterprise Solutions is a leading Technology Consulting company and a strategic investment partner of MongoDB. We help companies drive innovation in the cloud by adopting modern technology solutions that help them achieve their performance and availability requirements. With strong capabilities around Mobile, IOT and Cloud environments, we have an extensive track record helping Fortune 500 companies modernize their most critical legacy and on-premise applications, migrating them to the cloud and leveraging the most cutting-edge technologies.
Job Description
We are looking for passionate architects eager to be a part of our growth journey. The right candidate needs to be interested in working in high-paced and challenging environments leading technical teams, designing system architecture and reviewing peer code. Interested in constantly upskilling, learning new technologies and expanding their domain knowledge to new industries. This candidate needs to be a team player and should be looking to help build a culture of excellence. Do you have what it takes?
You will be working on complex data migrations, modernizing legacy applications and building new applications on the cloud for large enterprise and/or growth stage startups. You will have the opportunity to contribute directly into mission critical projects directly interacting with business stakeholders, customer’s technical teams and MongoDB solutions Architects.
Location - Chennai or Bangalore
● Relevant experience of 12+ years building high-performance applications with at least 3+ years as an architect.
● Good problem solving skills
● Strong mentoring capabilities
● Good understanding of software development life cycle
● Strong experience in system design and architecture
● Strong focus on quality of work delivered
● Excellent verbal and written communication skills
Required Technical Skills
● Extensive hands-on experience building high-performance applications primarily using Node.Js ,(Javascript/Typescript) along with Nest.Js, Express.JS, MongoDB.
● Hands-on experience with other languages such as .NET/C# or Java or Golang or Python.
● Strong experience with appropriate framework(s).
● Well versed in monolithic and microservices architecture and System design experience.
● Hands-on experience with data modeling on MongoDB (NoSQL) and Relational or NoSQL databases
● Experience working with 3rd party integrations ranging from authentication, cloud services, etc.
● Hands-on experience with Kafka or RabbitMQ.
● Hands on experience with CI/CD pipelines and atleast 1 cloud provider - AWS / GCP / Azure
● Strong experience writing and maintaining clear documentation
Good to have skills:
● Experience working with frontend technologies - React.Js or Vue.Js or Angular.
● Extensive experience consulting with customers directly for defining architecture or system design.
● Technical certifications in AWS / Azure / GCP / MongoDB or other relevant technologies
Roles and Responsibilities
- Ability to work on diverse backend stack such as Node JS, Java, Express JS
- Ability to work on diverse frontend stack such as React JS, Angular 6/7/8/9, HTML5, CSS3
- Ability to deliver quick POC’s using cutting edge technologies.
- Preparing reports, manuals and other documentation on the status, operation and maintenance of software.
- Design, develop, and unit test applications in accordance with established standards
- Developing, refining, and tuning integrations between applications. Analysing and resolving technical and application problems.
- Ability to debug application.
- Should have complete knowledge on developing RESTful Services.
- Should be able to also work in agile development methodology.
Competency Requirements
- Experience in NodeJS, Java and development using AngularJS / ReactJS
- Experience in front end frameworks such as Angular.js, React.js, Bootstrap, Foundation etc
- Experience in client/server application development
- Knowledge of agile development methodologies
- Knowledge of unit testing theory
- Knowledge of AWS cloud
- Experience in Java, Python and Go will be added advantage
Skills Required:
- 7+ years of experience as software engineer.
- Experience in Dot.Net technologies - Asp.Net MVC, WebAPI, .NetCore
- Experience in ORM like Entity Framework /Dapper
- Experience with Object-Oriented Design and SOLID principles
- Experience with Unit Testing, Mocking and Dependency Injection frameworks
- Experience with SQL Server, NoSQL or other database technology
- Experience with software quality, testing procedures and build automation tools
- Knowledge of the Principles & Patterns of Agile Software
- Ability to understand and troubleshoot existing code and maintain existing systems.
- Ability to identity performance bottlenecks.
- Experience working with version control tools such as GIT and CI/CD tools.
Your responsibilities as an Engineer:
• Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
• Documents and demonstrates solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
• Prepares and installs solutions by determining and designing system specifications, standards, and programming.
• Improves operations by conducting systems analysis; recommending changes in policies and procedures.
• Obtains and licenses software by obtaining required information from vendors; recommending purchases; testing and approving products.
• Updates job knowledge by studying state-of-the-art development tools, programming techniques, and computing equipment
• Participate in educational opportunities & read professional publications;
• Protects operations by keeping information confidential.
• Provides information by collecting, analyzing, and summarizing development and service issues.
• Accomplishes engineering and organization mission by completing related results as needed.
• Develops software solutions by studying information needs; conferring with users; studying systems flow, data usage, and work processes; investigating problem areas; following the software development lifecycle.
Skill sets we require:
• Proven work experience as a Software Engineer or Software Developer
• Experience designing interactive applications
• Ability to develop software in or other programming languages like JIRA or Postman
• Excellent knowledge of relational databases, MYSQL and Restful API
• Experience developing web applications using at least one popular web framework (Laravlel, Codeigniter and Magento)
• Experience with test-driven development
• Proficiency in software engineering tools
• Ability to document requirements and specifications
Educational Qualification:
• Bachelor’s/Master’s degree in Computer Science Engineering or equivalent
• Bachelor’s degree in Computer Science or IT related field
• 4-6 years of experience working across different product domains in a product development/engineering role
• Good communication skills necessary to manage business requests and work with different teams across differ-
ent geographies and time-zones; experience working with remote and distributed teams will be an added ad-
vantage
• Hands-on working knowledge and experience is requiredin:
a. JavaScript, Typescript, NodeJS (Express, NestJs, etc.)
b. Experience working in GCP or AWS or Azure
c. Experience working in Containers & Unix Platforms
d. Relational Databases (PostgreSQL, MySQL, SQL, etc.)
e. Agile Methodologies (Scrum, TDD, BDD, etc.)
f. Understanding of Microservices Architecture, Domain Driver Design, Test Driven Development and
Secure Design patterns and architecture is a must
g. Data Structures and Algorithms using Javascript, Typescriptand/or other Programing Languages
h. Strong organizational skills
i. Agile Methodologies (Scrum, TDD, BDD, etc.)
• Experience with several of the following tools/technologies is desirable:
a. GIT (Bit Bucket, Gitlab, etc.), Jira, Gradle, Maven, Jenkins, SharePoint, Eclipse/IntelliJ.
b. Design Patterns and implementing the Design Patterns
c. Development of Complex Application and System Architectures
d. NoSQL Databases (Redis, Mongo, etc.)
e. Full stack development
f. Experience working with CI/CD pipelines with for example GitHub Actions.
• Knowledge of the following technologies is a plus:
a. Other Programming Languages (Java, Python, etc.)
b. Continuous Integration and Continuous Delivery Tools like Jenkins, Git, etc.
c. Secure Development based on OWASP standards
Job Description:
We are looking for talented Technical Managers to be part of the Product Engineering team. The candidate should have good experience with Java/J2ee based technologies and will be responsible for delivering features that are meaningful to the customer and consistent with the product vision through the management of a cross-functional team. The person will also contribute to the team as a servant leader and ensure that the team has everything needed to be successful.
Technical Competencies
- Strong Java/J2EE development experience with demonstrated ability to develop and troubleshoot large mission applications & Software Products
- Experience on exception handling, correct use of data structures, multi-threaded programming, memory management and application tuning
- Excellent exposure in Object Oriented Design skills using Java/J2ee along with:
- Core Java Language (Collections, Concurrency/Multithreading)
- JDBC concepts (connection pooling, statement, result set)
- Web Technologies (Struts/Struts 2, Spring (IOP, MVC, AOP), Hibernate, JSP, Web services)
- Database optimization and profiling
- Core/JEE/Integration Design patterns/UML
- Should have experience in Unit Testing
- Good hands on experience with RDBMS like MySQL/Oracle with ability to write SQL Queries/Stored Procedures/Triggers/Joins/View etc
- Practical application of software product development standards and methodologies including Agile, XP, Kanban, RUP and UML
- Ability to apply design patterns consistently and also accurate when building per design requirements
- Good experience in source control, unit testing, code verification, documentation, automated build, continuous integration, metrics, and code reviews.
- Demonstrated problem solving, analytic and troubleshooting skills.
- Strong written and oral communication skills are required to effectively engage internal stakeholders and their technical representatives.
Responsibilities:
- Manages the team in producing working software each iteration in accordance with the team’s commitments
- Facilitates planning sessions, team meetings, and other “rituals,” such as the daily standup, iteration planning, iteration kickoff, iteration review, and retrospectives
- Ensures that the backlog of work for the team is well-defined with respect to scope, clarity of requirements, and acceptance criteria
- Helps remove roadblocks to delivery success.
- Helps the team follow its defined process, and leads process improvement efforts
- Understands the client’s business strategy and objectives as it relates to the product being developed; ensures that the client’s expectations are met or exceeded.
- Oversees the completion of stories, ensuring that the team understands what “Done” means for each story.
- Interfaces between the team and the customer
- Communicates effectively within the team and with all stakeholders by providing high-quality visibility into planned and actual deliverables.
- Is a model developer, with sharp coding skills and a passion for excellence
- Participates in design and coding activities, and helps with requirements, analysis, and testing as needed
- Ensures that the architecture of the product is sound
- Ensures product quality through effective monitoring of quality trends, test automation, defect tracking and root cause analysis.
- Assures that all production deliveries meet acceptance, operational, and quality criteria
- Develops camaraderie and strong collaboration across both the 3Pillar team and client team,
- Actively demonstrates and teaches strong consulting skills to teammates,
- Understands the full set of product development capabilities and speaks to them holistically,
- Proactively develops a deep "trusted advisor" relationship with the primary buyer,
- Assists in developing strategies to take advantage of opportunities within the account and works collaboratively with the Client Partner to execute them
Benefits
- A competitive annual salary based on experience and market demands
- Flexi-timings
- Medical insurance with the option to purchase a premium plan or HSA option for your entire family
- In-house Food & Refreshments
- Regular Health check-up camps arranged by the company
- Recreational activities
- Business casual atmosphere
- Vast knowledge of PHP programming concepts.
- Hands-on experience on object-oriented PHP, MVC design pattern and Laravel 5+ PHP Framework.
- Good understanding of Relational Database and normalization concepts.
- Should be hands-on with CSS, HTML (Responsive Web Design), JavaScript, jQuery & AJAX.
- Good communication skills; both verbal as well as written.
- Ability to work in a fast-paced environment, and manage time efficiently to meet project timelines
- Ability to work well independently, or with remote teams
- Creative and efficient problem solver.
Good to have :
- Experience in Agile Software Development projects
- Experience in writing Unit Testing cases (PHPUnit, PHPSpec, Behat)
- Capable to perform code reviews and provide code to optimize performance of the application.
At BACQ, our mission is to build financial services that are simple, accessible and affordable.
BACQ is founded by Sachin Bansal & Ankit Agarwal to build consumer-centric and technology-driven businesses in the BFSI (Banking, Financial Services & Insurance) space.
Responsibilities:
- Work on the development backend systems for our first product
- Build reliable, secure and performant backend systems
- Drive test coverage and continuous delivery automation within the team
- Mentor and provide feedback to teammates
Requirements:
- 2+ years of software development experience
- Strong computer science fundamentals
- Good knowledge of Java ecosystem
- Can write code that is readable, maintainable and performant
- Know the importance of tests and how to approach writing different types of tests
- Good understanding of relational databases, transactions, entity-relationship modeling
- Comfortable writing multi-threaded programs
Bonus:
- Understanding of domain-driven design concepts like ubiquitous language, bounded contexts, aggregates and domain events
- Know how to use test driven development as a design tool
- Good intuition for the principles underlying object-orientation, particularly encapsulation
- Understand the importance of immutability and of reducing the state-space of objects
- Seek to identify key underlying ideas and use those as building blocks before reaching for shiny new tools
- Have read some of our https://docs.google.com/document/d/18eWIOPYs0Hi8Kr4lXTtP_XMJp_4BrBzOd9Eui8v_l-c/edit?usp=sharing">favourite books











