We are looking for a Principal Software Engineer for our Product engineering team
In this role, you will...
- Develop, maintain and enhance .NET applications and services to contribute to our legacy and cloud platform.
- Analyze product and technical user stories and convey technical specifications in a concise and effective manner.
- Code & deliver a working product, with a 'first time right' approach.
- Participate in release planning, sprint planning, and technical design reviews; provide input as appropriate.
- Partner with engineers, product managers, and other team members as appropriate and be the go-to person for technical matters.
- Develop and maintain thorough knowledge and understanding of products.
- Leading projects as necessary, increasing team productivity and effectiveness by sharing your deep knowledge and experience.
- Drive key architectural decisions and design considerations.
- Partner with other Architect's and Manager to come up with setting technical guidelines and participate in code reviews to mentor other engineers on best practices.
- Partner with Product to do early feasibility of technical architecture.
- Partner with other Architects to build necessary frameworks to improve productivity of the engineers by driving automation.
- Introduce newer technologies as needed along with a strong POC and build a strong use case for more adoptability.
- Troubleshoot complex production issues and provide detailed RCA.
- Participate in agile activities like sprint planning, and technical design reviews; provide input as appropriate
Want more jobs like this?
Get jobs in Hyderabad, India delivered to your inbox every week.
You've Got What It Takes If You Have...
- Bachelor's or master's degree in computer science or related field.
- 8+ years of experience with active hands-on development experience in Microsoft Technology stack using C#
- Strong experience developing Microservices, RESTful services (preferably AWS)
- Experience with AWS core services: Lambda, ECS (Elastic Container Service), SNS (Simple Notification Service), SQS (Simple Queue Service), DynamoDB.
- Expertise in CloudWatch (monitoring and logging), cost management tools, and IAM for managing user permissions and security protocols.
- Knowledge of Elasticsearch and querying logs in Splunk.
- Exposure to ORM's like Entity Framework, Nhibernate or similar.
- Strong TDD approach and hands-on experience on tools like Nunit, xUnit or any other testing tools or frameworks and CICD practices.
- Strong in OOP and SOLID design principles.
- Understand AWS core services and basic architecture best practices.
- Experience in working on projects with public cloud providers like Amazon Web Services, Azure, Google Cloud, etc.
- Highly efficient data persistent design techniques. Strong understanding of data retrieval performance (queries, caching). Able to optimize designs/queries for scale.
- Proficient experience with relational databases such as Microsoft SQL Server/Postgres. Exposure to other non-relational DBs like MongoDB is a plus!
- Good understanding on how to deal with concurrency and parallel work streams.
- Should have work experience with Agile practices.
- Should be very good at analyzing and Debugging/Troubleshooting functional and technical issues.
- Should have good insight on Performance/Optimization techniques.
- Good understanding on secure development practices and proactively codes to avoid security issues. Able to resolve all findings.
- Excellent analytical, quantitative and problem-solving abilities
- Conversant in algorithms, software design patterns and Microservices, and their best usage.
- Ability to build frameworks and POC's from scratch that can be used across the teams.
- Self-motivated, requiring minimal oversight.
- Good team player with the ability to handle multiple concurrent priorities in a fast-paced environment.
- Strong interpersonal, written, and oral communication skills.
- Passion for continuous process and technology improvement
- AWS experience must and Certification preferable.
#LI-OnSite