Software Development Engineer
- Source: Naukri
- Infovision Labs
- On-site
- Bengaluru
- Full-Time
- Mid level
Job Description
Essential:
Tertiary qualification in Computer Science or Information Technology, or equivalent practical experience at a senior level.
5 – 8+ years software development experience in a similar role.
Proven record of independently owning and delivering features end-to-end, with high agency.
Ability to work effectively with stakeholders like Product Owner, Architects, Leads, QA, etc.
Experience with Production support.
Working familiarity with tools in the following areas, valued as evidence of underlying engineering fundamentals rather than as ends in themselves:
o SPA frameworks
o RESTful API frameworks
o Node.js
o Micro-frontend architecture
o Typescript
o Angular / React
o Relational SQL databases
o NoSQL databases
o UI automation frameworks and libraries
o Git
o Good understanding of CI/CD, the fundamentals of distributed and cloud computing, and containerization.
Advanced knowledge and experience in the following:
o Asynchronous programming and the fundamentals of distributed, cloud-native systems, including consistency, fault tolerance, and observability.
o Pragmatic, modular, maintainable, and testable design patterns.
o Producing and reviewing code, including AI-generated code, that complies with modern secure engineering practices.
o Dependency management to prevent security vulnerabilities.
o Branching models to match product deployment and support policies.
o Enforcing code quality through disciplined code review and pull requests.
Excellent communication skills both written and verbal.
Ability to build and sustain effective relationships.
No restrictions to travel.
Roles and Responsibilities
Software development
Lead requirement gathering to enable effective scrum refinements.
Create technical implementation plan, gain product, development lead and solution architect approval.
Ensure all activities and dependencies are identified in the planning phase.
Liaise closely with other developers and development team stakeholders to provide accurate estimates of efforts and delivery timeframes - ensuring the inclusion of all activities required to implement the proposed design and having input into the planning process.
Develop solutions from first principles that reliably deliver to defined expectations.
Ensure security and compliance with appropriate certifications and standards are intrinsic to the design and engineering practices used, rather than bolted on afterwards.
Ensure feature implementation is delivered with no Production defects.
Ensure all work is delivered with the realities of distributed, cloud-scale systems in mind: scalability, performance, resilience, and observability.
All solutions, whether hand-written or produced with AI assistance, must be modular, maintainable, and pragmatically designed, using asynchronous techniques wherever applicable.
Escalate issues and delays in a timely manner.
Review the majority of code commits, including code generated with AI tools, and provide constructive feedback.
Understand SLAs for our products and provide remediation to production issues to meet the SLA obligations.
Ensure all work is tracked and logged correctly using tracking tools.
Ensure solutions delivered to testing and support to achieve the agreed quality standard.
Become and act as a subject matter expert, providing advice to development team stakeholders.
Let well-designed automated tests drive development and guard high quality standards on every change.
Maintain and grow deep expertise by keeping pace with advances in the industry, particularly AI-assisted engineering, and undertaking approved training where appropriate.
Software documentation
Produce appropriate release documentation.
Document resolutions of issues.
Ensure standard issue tracking systems used.
Ensure code versions can be tracked and reverted as required.
Maintain and update component documentation through code.
Software testing
Ensure implementation can be tested.
Practise test-first development, letting unit tests specify behaviour and drive design with high coverage.
Improve test coverage by refactoring legacy code and adding tests.
Ensure tests gate every commit and provid…
Skills
- NodeJS
- TypeScript
- microsoft-typescript
- React
