Job Objective
Your role as Software Engineer is to independently design, develop, test, and maintain full-stack software solutions across backend and frontend layers. You will own assigned features from requirement analysis through implementation, integration, QA handover, and production support, while ensuring solutions are reliable, maintainable, secure, and aligned with established engineering standards.
Main Tasks
- Design, develop, and maintain backend services, APIs, business logic, data processing, frontend applications, dashboards, portals, forms, reporting screens, internal tools, and reusable components.
- Own assigned features from requirement analysis through development, testing support, QA handover, defect resolution, and production support, with limited supervision.
- Implement complete end-to-end features covering frontend user interactions, backend processing, PostgreSQL data persistence, event queue processing, integrations, and final user or system responses.
- Design and consume REST APIs, including request and response models, validations, authentication, authorization, error handling, and appropriate integration behavior.
- Implement and maintain integration flows with internal services, operators, aggregators, third-party systems, callbacks, and webhooks, ensuring proper error handling and operational visibility.
- Develop and validate PostgreSQL queries and database interactions, including transaction behavior, indexing, constraints, data persistence, and consistency requirements for assigned features.
- Implement and support RabbitMQ and event-driven workflows, including event publishing, message consumption, payload validation, retries, dead-letter handling awareness, logging, and queue-processing monitoring.
- Implement and support asynchronous workflows such as notifications, billing triggers, delivery reports, background jobs, audit events, and integration callbacks according to system requirements.
- Analyze business and technical requirements, identify implementation gaps and dependencies, and propose appropriate technical approaches for assigned features before development.
- Troubleshoot and resolve technical issues across backend services, APIs, frontend behavior, PostgreSQL results, event queues, integrations, asynchronous processes, and end-to-end application flows.
- Perform unit testing, support integration and regression testing, resolve identified defects, and validate implemented changes before QA handover and release.
- Optimize standard application performance, including API response times, frontend rendering behavior, PostgreSQL queries, database interactions, and event-processing efficiency.
- Collaborate with QA, Product, DevOps, Support, Security, and other engineering teams to resolve dependencies and ensure smooth end-to-end delivery.
- Provide basic technical guidance to Junior Software Engineers when required and support them in resolving straightforward development and troubleshooting issues.
- Escalate complex architectural, scalability, security, performance, event-driven design, and production-critical concerns to Senior or Lead Software Engineers when required.
- Maintain technical documentation covering APIs, integrations, frontend components, database interactions, event flows, application workflows, configurations, and known technical limitations.
- Ensure development activities comply with Jira traceability, Git and branching practices, pull request and code review requirements, SonarQube validation, secure coding, documentation, and release standards.
Qualifications
- Bachelor’s degree in computer science, Software Engineering, Computer Engineering, Information Technology, or a related field.
- 2+ years of experience in software development across backend and frontend applications.
- Hands-on experience developing and integrating APIs, databases, and full-stack application features.
- Experience with database-driven applications, event-driven or asynchronous processing, and system integrations.
- Exposure to messaging, real-time, high-volume, or integration-heavy platforms is considered an advantage.
- Professional proficiency in Local Language and English is required.
- Good hands-on knowledge of backend development using Java or C#.NET and frontend development using React and Next.js.
- Good understanding of REST APIs, authentication, authorization, integration patterns, callbacks, webhooks, and error handling.
- Good knowledge of PostgreSQL, SQL queries, transactions, indexing fundamentals, constraints, data persistence, and validation.
- Good understanding of RabbitMQ or similar event-queuing technologies, including producers, consumers, message handling, retries, dead-letter concepts, and asynchronous processing.
- Ability to independently develop and troubleshoot complete features across backend, frontend, database, integration, and event-processing layers.
- Good knowledge of Git workflows, branching strategies, pull requests, code reviews, and development traceability.