● A Bachelor’s degree in Computer Science or equivalent combination of technical education and
● 5 to 9 years of Software Development experience
● Experience in system design, distributed systems, relational and No-SQL databases.
● Strong, object-oriented design and coding skills (C/C++ and/or Java preferably on a UNIX or Linux
● Solid software development background including design patterns, algorithms, data structures,
test driven development
● Any previous experience in working with Big Data or leveraging machine learning in improving
consumer experience is desirable.
● Excellent verbal and written communication skills
Thoughtworks is a global software consultancy with an aim to create a positive impact on the world through technology. Our community of technologists thinks disruptively to deliver pragmatic solutions for our clients' most complex challenges. We are curious minds who come together as collaborative and inclusive teams to push boundaries, free to be ourselves and make our mark in tech.
As Senior consultant, we work with our clients to ensure we’re evolving their technology and empowering adaptive mindsets to meet their business goals. You could influence the digital strategy of a retail giant, build a bold new mobile application for a bank or redesign platforms using event sourcing and intelligent data pipelines. You will use the latest Lean and Agile thinking, create pragmatic solutions to solve mission-critical problems and challenge yourself every day.
You’ll spend time on the following:
- You will champion best practices like writing clean and reusable code using practices like TDD, SOLID principles, OO design, and pair programming
- You will partner with other technologists from cross-functional teams advocating devops culture
- You will work in collaborative, product-focused teams to build innovative customer experiences
- Take ownership and accountability beyond individual deliverables, always pushing the envelope in order to deliver awesome results for our clients
- Learn, digest and subsequently apply the latest technology thinking from ourtech radar to solve client problems
Here’s what we’re looking for:
- You have 5+ years of experience using two or more development languages (Java8 or latest version, Ruby, Python, Golangetc.) with experience in Object-Oriented programming
- You’re willing and able to commit to traveling up to 100% (back home on the weekends) across the US and Canada to help our clients solve their business problems
- You can write clean, high-quality code in a variety of languages and are also able to spot (and improve) bad code
- You’re resilient in ambiguous situations and can approach challenges from multiple perspectives
- 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
- You’re willing and able to commit to travel to client sites in order to solve their business problems
- Plan, develop and implement large-scale projects from conception to completion.
- Interface with clients and gather business requirements and objectives.
- Translate clients’ business requirements and objectives into technical applications and solutions.
- Understand and evaluate complex data models.
- Design, develop and implement new integration.
- Execute system development and maintenance activities.
- Develop solutions to improvise performance and scalability of systems.
- Mentor junior and mid-level engineers.
- 3-5 years of relevant experience, working in Java related technologies.
- A Good Engineering or Masters degree from a reputed university
- Should have strong technical skills with a good grasp of OO concepts and design patterns
- Good knowledge of SQL database ( MySQL, Oracle, etc )
- Good understanding of frameworks like Spring, Hibernate, etc.
- Good understanding of spring boot and microservices.
- Exposure to AWS services - S3, SQS, Lambda, DynamoDB, API Gateway, etc.
Good to have
- Knowledge of No-SQL DBs like mongo, dynamoDB, etc.
- Knowledge of message brokers/queuing services like SQL, rabbitMQ, Kafka, etc.
Position: Java developer
Experience: 4-5 years
Notice period- immediate to 7 days
• Having good experience in writing complex database queries.
• Should be a quick learner and keen on learning new technologies
• Good knowledge in Object Oriented Programming Principles, Design Patterns and Software Architecture
• Experience with building SaaS-based web applications
• Ability to work as part of a team and offer new ideas
• Working knowledge of GIT version control system
• Product development background.
3+ years of experience as a JAVA/J2EE technologies developer in delivering highly available and scalable applications in a cloud operating environment. - Expertise in Spring framework and equivalent.
- Experience in developing Java Microservices using spring boot, docker, Kubernetes etc.
- Experience building, testing, and consuming REST APIs is a must have experience.
- Experience with high-throughput messaging technologies and patterns; Kafka and/or related technologies a plus.
- Exposure to databases of any types relational, analytical, columnar, etc; including MySql.
- Experience with Git source control and building/maintaining Continuous Integration and Delivery pipelines; Jenkins experience a plus.
- Expertise in Object-Oriented Development.
- Experience working in an Agile/Scrum-inspired delivery methodology. - Expertise with database programming, transaction management. Expertise with build tools – MAVEN, Gradle.
- Expertise in design patterns and data structures.
- Good understanding of Unit test tools.
- Good analytical skills to break down requirements and solve complex problems.
- Good understanding of Source control toolsets.
- Well-developed verbal and written communication skills.
- Proven track record to meet aggressive timelines.
Good to have
- Understanding CI tools like Jenkins, Bamboo.
- Experience with Google Cloud Platform or equivalent.
- Experience with Microservices and/or Monolith to Microservice migration.
- Experience with frontend technologies like to react, angular is a plus
- Good Linux experience
5 years of architecture, design and programming experience preferably in fast-paced dynamic environment
Strong application design and implementation skills, solid understanding of the entire development cycle.
Strong background in Java/J2EE based application
Strong background in Spring/Spring boot based application
Strong background in Microservices based application
Experience working with Apache and/or Tomcat
Experience in transforming requirements to software design
Strong Experience with developing Java SAAS web applications.
Working experience in Industry Standard protocols related API Security including OAuth
Demonstrate strong design and programming skills using JSON, Web Services, XML, XSLT, PL/SQL in Unix and Windows environments.
Strong background working with Linux/UNIX environments.
Strong Shell scripting experience.
Working knowledge with Oracle, DB2 or MongoDB databases.
Passion to stay on top of the latest happenings in the tech world and an attitude to discuss and bring those into play. Strong agile/scrum development experience
Strong collaboration and communication skills within distributed project teams
Excellent written and verbal communication skills