Location:-Gurgaon
Currently WFH
Exp with Product based organisation only
Exp Required:- 3 to 9 yrs
Responsibilities
- Work with a talented team to invent, design and build software that is stable and perform ant
- Primary role will be quality and timely delivery of the application/ feature/ module your team will be working on
- Adopt and execute good design philosophy and code writing practices
- Ensure the code goes through rigorous tests and quality checks before deployment.
- Work with other software engineers and database engineers to set excellent development practices and deliver innovative changes in new and existing products.
- Be hands-on technical, thus, leading by example using web, mobile and database technologies.
- Work on project ideas with customers, stakeholders and peers
- Be actively involved in code review process, design discussions, team planning
Basic Qualifications
- Bachelor's degree in Computer Science, Software Engineering, or a related technical discipline
- Experience in software design and development
- Proficiency with at least one Object Oriented language (e.g. Java)
- Computer Science fundamentals in object-oriented design, data structures, algorithm design, problem-solving, and complexity analysis
- A strong track record of project delivery for large, cross-functional projects
- Experience with building high-performance, highly available and scalable distributed systems
- Experience with API Design, ability to architect and implement an intuitive customer and third-party integration story
- Ability to think and analyse both breadthwise (client, server, DB, control flow) and depth-wise (threads, sessions, space-time complexity) while designing and implementing services
Similar jobs
What you'll do
- You will join a growing team of experienced developers building a cross-platform application, backend services and open platform
- You will collaborate with your peers to define architecture, quality standards, and best practices and participate in code reviews, design reviews, architecture discussions.
- You will work closely with our product team, teaming up in small cross-functional teams to bring features from idea to prototype to final implementation
We would love to hear from you if
- You have working knowledge of algorithms and data structures with space and memory complexities
- You have 5+ years of experience as a software engineer at a SaaS or technology company, including familiarity with the different pieces of technology involved in building modern web applications
- You have worked with varied technologies including Java Spring framework Springboot, MySQL, NOSQL, Mongo/Dynamodb, Redis/MemCache, Lucene/ElasticSearch , Nginx , CDN , Spring , Hibernate , Maven , MVC Frameworks and other upcoming internet technologies.
- You have the ability to focus on understanding the technical specifications and translate the same into reusable , maintainable and executable codes within specified timelines and parameters of quality.
- You have knowledge of Messaging Queues (Kafka/RabitMq/SQS), Dynamodb, Elastic Search, Redis/Memcache/Elasticache
- Experience with source control systems (prefer Github)
- You have experience in building RESTful APIs, Spring framework and Mysql/RDS
- Strive to craft clean, reliable and highly maintainable code
- Experience with test driven development and pair programming
- To you, technologies and programming languages are about tradeoffs. You may be opinionated, but you're not ideological and can learn new technologies as you go
- Worked with microservices
- Passion for fintech
Why Tartan?
- Brand new Macbook
- Stock Options
- Health Insurance
- Unlimited Sick Leaves
- Passion Fund (Invest in yourself or your passion project)
- Wind Down
Requirements:
Java developer responsibilities include designing, developing, Testing and delivering high-volume, low-latency applications for mission-critical systems.
1. Proven hands-on Software Development experience
2. Proven working experience in Java development
3. Hands on experience in developing applications using Java EE platforms
4. Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management etc)
5. Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate)
6. Experience in the Spring Framework
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.
- Experience in Node.js Frameworks
- Hands-on experience with MongoDB
- Strong proficiency with JavaScript, Socket IO, ExpressJS & SailsJS
- Experience working with third-party developer tools, including documentation, APIs, and SDKs
- Good Grasp of Asynchronous Programming and Its Workarounds
- Database Schema design for Business Processes
- Working Knowledge of JWT based passport Authentication
- Can Write and Refactor Efficient Codes
- Experience in Implementing Data Protection
- Must have demonstrated the ability to deliver high-quality products on time
- Knowledge of GIT, SVN technology
- 2 + years of software development experience utilizing Java based frameworks and technologies to build enterprise grade product solutions.
- 2+ years of experience designing, developing and documenting RESTful APIs.
- Strong understanding of concepts/technologies like Spring MVC, Spring boot, J2EE, EJB, application/API security, API governance/gateway platforms like apigee or kong.
- Good understanding of RDMS concepts and development preferably using MS SQL Server.
- Experience using test automation technologies like cucumber, selenium is a big plus.
- Partner with scrum masters to address technical blockers/impediments to progress.
- Prior experience working with agile scrum-based development methodology. Participate in sprint planning and estimate development efforts for features and stories.
- Partner with DevOps to install and configure/tune application containers like embedded Spring boot tomcat and webserver technologies preferably nginx or apache.
- Partner with cloud engineering group to outline the infrastructure provisioning requirements/needs for new product development.
- Design and develop CI/CD tools and process preferably using Jenkins to configure build jobs for APIs and design pipeline to promote artifacts from development all the way to production
- Experience with messaging technologies like kafka is a huge plus
- Work with Test Automation engineering team to integrate test automation scripts as part of the CI/CD process.
- Prior proven experience of utilizing and productionizing container/container orchestration technologies like Docker, kubernetes.
- Participate and Resolve issues related deployments, application performance etc.
Role/ Responsibilities
- Lead a team of hard working backend developers.
- Design APIs, DB, Queues, monitoring for micro services.
- Writing, deploying and managing micro services.
- Migrate existing components into distributed micro service architecture.
- AWS Cloud / Google Cloud Platform (Manage Infrastructure).
- API integration with 3rd parties.
- Unit test cases, automation.
- Database optimisation.
- Design of highly concurrent backend architecture.
- Handling high traffic data.
Experience required:
- Sound fundamentails in software design.
- Must have worked on distributed and micro service architecture.
- Sound fundamentals on scale/ performance/ memory optimisation.
- Sound fundamentals of authentication, authorization, payment processes, data security.
- Must have experience in Spring / Spring boot.
- Good to have experience in Kafka / JMS / RabbitMQ / AWS Elastic queue.
- Good to have experience in Junit / mockito unit test cases.
- Good to have knowledge in Mysql (or any RDBMS).
Primary Skills
Core java, J2EE frameworks (e.g. Spring), ORM (e.g. Hibernate) with a good understanding of multi-tiered web-based applications. Should be strong with OOPS concepts. Should have good SQL writing skills. Banking domain experience is an added advantage. Should have worked on REST APIs. Experience with Third Party Integration. Hands on experience on writing Unit test cases and Integration test cases. Experience on MVC Architecture.
Job Specification
BS/MS degree in Computer Science, Engineering or a related subject Proven hands-on Software Development experience Proven working experience in Java development Hands on experience in designing and developing applications using Java EE platforms