Eng SW Lead II - IND
Hyderabad, IN, 500 081
IGT, where innovation meets entertainment on a global scale! From the casino floor to your mobile screen, we deliver thrilling, responsible, and unforgettable gaming experiences—powered by world‑class content, strong technical and commercial capabilities and nurtured by a culture of collaboration, accountability, and ownership.
Whether it’s spinning reels, placing bets, or enabling secure payments, we turn innovation into impact through disciplined execution and long‑term value creation. With a team of over 6,000 employees across 30+ countries and products delivered in more than 100 jurisdictions worldwide, we operate at scale while staying closely connected to customers we serve. If you’re ready to bring your talent to a team shaping the future of entertainment, your next big move starts here - www.igt.com.
Qualifications
- Experience: 5+ years of software engineering experience, with strong hands-on experience in Golang.
- Golang / Go: The primary programming language used to build and maintain backend applications.
- Scalable applications: Building systems that can handle growing numbers of users, requests and data.
- Microservices: Developing smaller, independent services that work together as one application.
- REST APIs / gRPC: Building connections that allow applications and services to exchange information.
- Go Modules: Managing the libraries and versions required for a Go application.
- Goroutines: Handling multiple tasks concurrently to improve application efficiency.
- Channels: Sharing information and coordinating work between goroutines.
- Mutexes: Protecting shared data from conflicting changes by multiple tasks.
- Worker pools: Controlling how many tasks run concurrently to avoid overloading the system.
- Interfaces: Making code flexible by defining common behaviors that different implementations can provide.
- Dependency injection: Supplying code with dependencies, such as database connections, to make it easier to maintain and test.
- Context and cancellation: Managing request deadlines and stopping tasks when they are no longer needed.
- Error handling: Identifying and managing failures so the application responds appropriately.
- Node.js: A secondary technology used to develop and maintain backend services.
- Express.js / NestJS: Frameworks used to organize Node.js applications and build APIs.
- Asynchronous programming: Allowing other work to continue while waiting for tasks such as database requests.
- npm: Installing and managing libraries for Node.js applications.
- TypeScript: Adding checks to JavaScript code to help catch mistakes during development.
- Angular: A secondary technology used to build user-facing screens and web applications.
- Components: Creating reusable parts of a screen, such as menus, forms and dashboards.
- Services: Sharing common logic and data across Angular components.
- Directives: Adding behavior to webpage elements, such as showing or hiding content.
- RxJS: Managing information that arrives over time, such as user actions and API responses.
- Reactive Forms: Building forms with input validation and clear error messages.
- Angular lifecycle: Managing what happens when a component is created, updated or removed.
- HTTP Client: Connecting Angular screens to backend APIs to send and receive data.
- State management: Keeping application data consistent across screens and components.
- SQL Server / PostgreSQL: Storing and managing structured data in related tables.
- MongoDB: Storing and managing data in flexible documents.
- Redis: Using a fast data store, often for caching frequently accessed information.
- Kafka / RabbitMQ: Exchanging messages between services and supporting background tasks.
- External integrations: Connecting the application with other systems, tools and services.
- Unit testing: Checking that individual functions or components work correctly.
- Integration testing: Checking that connected parts of the application work together.
- API testing: Checking that APIs return the expected responses and handle errors correctly.
- Docker: Packaging applications so they run consistently across different environments.
- CI/CD pipelines: Automating application builds, tests and deployments.
- Performance optimization: Improving application speed and resource usage.
- Production troubleshooting: Investigating and resolving issues in live applications.
- Code reviews: Reviewing code to improve quality, readability and maintainability.
- Architectural discussions: Helping decide how applications and services should be structured.
Keys to Success
• Building collaborative relationships
• Decision making
• Drive results
• Foster innovation
• Personal energy
• Self-leadership
IGT is committed to fostering a diverse, equitable, and inclusive workplace that reflects the global communities and customers we serve. We strive to create an environment where all employees feel valued, respected, and empowered.
IGT is an equal opportunity employer. We provide equal employment opportunities to all applicants and employees without regard to race, color, religion or belief, sex, sexual orientation, gender identity, age, national origin, disability, or any other characteristic protected by applicable law. This commitment applies to all employment practices, including recruitment, hiring, promotion, compensation, benefits, training, and termination.
We thank all applicants for their interest; however, only those selected for an interview will be contacted.