Software Engineer
Job description
About the role
You will work independently as well as in small teams to develop the best product on the market while implementing scalable, stable, and user-friendly solutions that handle current capacity and future growth. You will thrive in a modern agile software engineering environment that leverages source code control GIT, dev/stage/prod release cycles, extensive testing, and continuous deployment to deliver high-quality solutions. You will solve challenging technical problems daily, pushing your skills to new limits as you design and implement integrations between Talkdesk and external systems using APIs, middleware, and custom development. You will influence a growing team by acting as a technical guide, speaking conceptually, documenting architecturally, and remaining hands-on with code to ensure alignment with product goals. You will partner closely with the Product team and other engineering teams across clusters and Business Units to ensure solutions fulfill all requirements and drive customer-obsessed innovation.
Key facts
What you'll do
Work independently as well as in small teams to develop the best product on the market while balancing speed with quality and reliability.
Implement scalable, stable, and user-friendly products that handle current capacity and gracefully support future growth under varying loads.
Operate within a modern agile software engineering environment that relies on source code control GIT, dev/stage/prod release cycles, extensive testing, and continuous deployment.
Solve challenging technical problems that stretch your abilities and require creative, robust, and maintainable solutions.
Develop and maintain microservices and APIs that are resilient, performant, and aligned with industry best practices.
Engage with the Product team and other engineering teams across clusters and Business Units to clarify requirements, validate assumptions, and ensure solutions meet business needs.
Influence a growing team while acting as a technical guide, documenting architectural decisions, and staying hands-on with code to uphold quality and consistency.
Design scalable solutions using code to support business functions and product goals, navigating platform limitations effectively and anticipating future needs.
Design and implement integrations between Talkdesk and external systems using APIs, middleware, and custom development, ensuring data integrity, security, and reliability.
Advocate for automated testing, continuous integration, and robust testing strategies to validate functionality and prevent regressions.
Experience working with CI/CD pipelines and full product development lifecycles to deliver features from conception to production.
Passion for producing clean, standards-compliant, secure code that is readable, maintainable, and fit for purpose.
Be fearless about learning new technologies and exploring technical approaches to application development in a fast-evolving landscape.
Demonstrate strong written and spoken English to communicate effectively with cross-functional stakeholders and engineering peers.
Requirements
BS/MS Degree in Computer Science, Applied Math, or an Engineering area as a foundational requirement for the role.
1+ years of experience in Software Development, with a focus on cloud-based applications and modern distributed systems.
Strong experience with the design and development of web applications using contemporary patterns and technologies.
Strong object-oriented programming skills and hands-on experience with cloud databases and data storage solutions.
Proficiency with Kotlin, Java, and Spring Boot to build robust, scalable, and maintainable services.
Deep understanding of the design and development of Service Oriented Architecture (SOA, API) and Event driven Architectures to enable loose coupling and scalability.
Experience with microservices architecture, APIs, and message brokers such as Kafka and RabbitMQ to support asynchronous and reliable communication.
Experience with one or more storage technologies including PostgreSQL, MySQL, MongoDB, Redis, and Elasticsearch based on use cases.
Experience scaling global web applications to support large user bases and varying geographic demands.
Advocate for automated testing, continuous integration, and a testing culture that ensures quality at every stage of development.
Experience working with CI/CD pipelines and active participation in product development from planning to deployment.
Passion for producing clean, standards-compliant, secure code that follows best practices and regulatory considerations.
Be fearless about learning new technologies and adapting to new technical approaches as application requirements evolve.
Good written and spoken English to facilitate clear communication and collaboration across teams and stakeholders.