Software Engineer, Backend
Greater Bengaluru Area, IN
YML is a design and digital product agency. We create innovative products that export Silicon Valley to the world. We create value for our clients by creating value for their customers.
Founded in 2009 we built app #54 in the App store. We have led early-stage startups and top-tier brands to “wow” their customers with best-in-class digital products and experiences. Our work has created category leaders in retail (The Home Depot) and insurance (State Farm), as well as laid the digital foundation for the next generation of Fortune 500 companies (Credit Karma, PayPal, Mercari, and more).
Our bread and butter are in digital products, prototypes, customer experience, service design, and moment mapping. Our work has been recognized by Steve Jobs (ya, that Steve Jobs) and featured by TED Talks, in The Wall Street Journal (“YML is one of the most innovative companies in Silicon Valley”), Forbes, Ad Age, ABC, CNBC and more. We are not a marketing agency. No campaigns. No media buying.
Our team in Bangalore is 200+ strong, and we are growing in a variety of ways. Our goals include a culture of excellence and we are looking to transform the team to be one of the best tech teams in Bangalore.
We are looking for an analytical, results-driven Back-end Developer who will work with team members to troubleshoot and improve current back-end applications and processes. Your primary focus will be development of all server-side logic, definition and maintenance of databases, and ensuring high performance and responsiveness to requests from the front-end. You will also be responsible for integrating the front-end elements into the application. A basic understanding of front-end technologies is therefore necessary as well.
This position reports to an Engineering Manager.
WHAT WILL YOU BE DOING?
- Collaborate with Front-end developers to integrate user-facing elements with server side logic
- Be involved and participate in the overall development lifecycle
- Gather and address technical and design requirements
- Participate in the entire application lifecycle, focusing on coding and debugging
- Building reusable code and libraries for future use
- Optimization of the application for maximum speed and scalability
- Conduct unit/integration/system tests and optimize performance
- Implementation of data storage solutions
- Collaborate with multidisciplinary team of designers, developers and system administrators
- Follow emerging technologies
- Hands-on experience with programming languages like Java, Spring Boot
- Strong Expertise in Algorithms and Data Structures.
- In-depth understanding of the entire development process (design, development and deployment)
- User authentication and authorization between multiple systems, servers, and environments
- Understanding differences between multiple delivery platforms such as mobile vs desktop, and optimizing output to match the specific platform
- Exposure to Cloud services like AWS, AZURE for e.g: route53, RDS instances, AMIs, EC2, S3 buckets
- Proficient understanding of code versioning tools, such as Git
- Experience with Maven and/or Gradle
- Exposure to DevOps practices.
- Strong experience in using SQL & NoSQL solutions and understand pros and cons of relational and free form databases.
- Strong experience in building REST APIs using leading open-source frameworks.
- Experience with writing Unit tests, API tests using Postman collection and/or Swagger.
- Excellent analytical and time management skills
- Teamwork skills with a problem-solving attitude
NICE TO HAVE
- Docker (Kubernetes, etc.).
- Contribution to the open source communities.
- Experience working in an Agile/Scrum development process
- Payment Gateway Integration
- CMS integration
- Qualification – B.Tech/M.Tech/MCA(IT/Computer Science)
- Years of Exp – 4-6yrs