Software Engineer
- Source: Indeed
- Aureole Technologies Pvt Ltd
- On-site
- State of Karnataka, India
- Full-Time
- Mid level
Job Description
Role Summary
Build, enhance, and maintain software platforms for manufacturing and industrial environments. Take ownership of features across the backend, APIs, frontend, and database layers, while contributing to application reliability, performance, and modernization.
The role involves working across both legacy and modern technology stacks, including modernization and migration of existing applications.
We value impact, ownership, sound technical judgment, strong debugging ability, and the ability to deliver reliable solutions end-to-end.
What You’ll Do
- Design, develop, and maintain applications using C#, .NET, .NET Core, SQL, and React.
- Develop and maintain REST APIs using appropriate architecture and design practices.
- Build reusable and maintainable frontend components using React, JavaScript, HTML, CSS, and TypeScript where applicable.
- Design and optimize SQL queries, stored procedures, and database operations.
- Work with relational databases, with Oracle experience being beneficial.
- Analyze and troubleshoot slow queries, APIs, and application performance issues.
- Debug complex issues across frontend, backend, API, and database layers and identify root causes.
- Investigate and resolve production issues while minimizing regression risk.
- Work with both legacy technologies such as ASP.NET Web Forms and WCF/SOAP and modern technologies such as ASP.NET Core and Dapper.
- Understand existing codebases, including undocumented or legacy code, and make safe and maintainable changes.
- Contribute to technical design discussions and implementation decisions.
- Write clean, maintainable, reusable, and testable code.
- Participate in code reviews and provide meaningful technical feedback.
- Write appropriate unit/integration tests and consider regression scenarios.
- Implement logging, diagnostics, error handling, and monitoring to improve application reliability.
- Collaborate with engineers, QA, product, and other stakeholders to deliver features end-to-end.
- Identify opportunities to improve application performance, scalability, reliability, and maintainability.
- Use Git and established version-control workflows.
- Use AI-assisted development tools responsibly to accelerate development, debugging, and documentation while validating and understanding the generated output.
Must-Have Skills
- Strong hands-on experience with C# and .NET / .NET Core.
- Strong understanding of Object-Oriented Programming (OOP) and common software design principles.
- Hands-on experience developing or integrating REST APIs.
- Strong SQL skills, including complex queries, joins, subqueries, stored procedures, and query optimization.
- Experience with relational databases; Oracle experience is preferred.
- Good understanding of web application architecture, HTTP, REST, and client-server communication.
- Hands-on experience with React and strong fundamentals in JavaScript, HTML, and CSS.
- Familiarity with Git or equivalent version-control systems.
- Strong debugging and analytical skills.
- Ability to read and reason about unfamiliar or undocumented code before making changes.
- Understanding of application performance, reliability, scalability, and maintainability.
Good to Have
- Experience with ASP.NET Core Web API, middleware, dependency injection, and related framework capabilities.
- Experience with ASP.NET Framework / Web Forms.
- Experience with React and TypeScript.
- Experience with Dapper or similar data-access frameworks.
- Familiarity with Redis, caching strategies, or JWT-based authentication.
- Experience with automated unit/integration testing.
- Experience with application logging, monitoring, and diagnostics.
- Exposure to CI/CD pipelines and deployment processes.
- Experience with manufacturing or ERP applications, particularly SAP PP-PI, process orders, batches, BOMs, or production workflows.
Engineering Practices
- Writes clean, maintainable, reusable, and testable code.
- Follows appropriate design principles and coding standards.
- Performs effective code reviews and provides constructive technical feedback.
- Uses logging, diagnostics, and debugging tools to identify root causes.
- Considers performance and scalability when designing solutions.
- Writes appropriate automated tests and actively considers regression scenarios.
- Applies appropriate error handling and defensive programming practices.
- Follows…
Skills
- c-sharp
- dot-net
- dot-net-core
- React
- javascript
- TypeScript
- microsoft-typescript
- oracle
- asp-net
- wcf
- asp-net-core
- dapper
- Redis
- sap
