Title: Software Engineer (Mid-Level)
Company Name: Karooth IT (BD) Limited
Vacancy: 01
Age: Na
Job Location: Dhaka
Salary: Tk. 50000 - 60000 (Monthly)
Experience: --
Published: 2026-10-07
Application Deadline: 2026-11-06
Education:
Requirements: --
Skills Required:
Additional Requirements:
Responsibilities & Context:
We are looking for a Software Engineer who writes clean, reliable Java and Python code and works well inside a team. You will build and maintain backend services and web applications for large-scale MIS and public-sector platforms. You must think critically, understand how computers and networks really work, and use modern AI coding tools to deliver faster without lowering quality.
Key responsibilities
1. Design, develop, test and maintain backend services and web applications using Java, Spring Boot and Spring MVC.
2. Build scripts, data-processing jobs, integrations and utilities in Python.
3. Design and consume RESTful APIs; integrate with third-party and government systems.
4. Design database schemas and write efficient queries (PostgreSQL / MySQL / Oracle).
5. Take part in every stage of the SDLC: requirement analysis, estimation, design, coding, testing, deployment and maintenance.
6. Set up and maintain CI/CD pipelines (e.g. Jenkins, GitLab CI or GitHub Actions) for automated build, test and deployment.
7. Write unit and integration tests (JUnit, Mockito, PyTest) and fix defects reported by QA.
8. Use AI-assisted development tools (e.g. Claude, GitHub Copilot, Cursor, ChatGPT) to speed up coding, testing, documentation and debugging — and review AI output critically before merging.
9. Troubleshoot issues across application, server and network layers in development, staging and production.
10. Join code reviews, sprint planning, stand-ups and retrospectives; share knowledge openly with the team.
11. Write clear technical documentation: API specs, design notes and deployment guides.
12. Learn new frameworks, tools or domains quickly when a project needs them.
Required qualifications
Education
• B.Sc. in Computer Science & Engineering (CSE), Software Engineering, EEE or a related field from a recognised university.
Experience
• At least 3 years of hands-on software development experience.
• Proven work on production projects using Java, Spring Boot, Spring MVC and Python.
Technical skills (must have)
• Computer fundamentals: data structures, algorithms, OOP, operating systems, memory, processes and threads, concurrency.
• Networking fundamentals: TCP/IP, HTTP/HTTPS, DNS, ports, load balancing, firewalls, SSL/TLS, and basic network troubleshooting.
• Java 8+ (Java 17 preferred), Spring Boot, Spring MVC, Spring Data JPA / Hibernate, Spring Security.
• Python for scripting, automation, APIs or data processing (Flask / FastAPI / Django is a plus).
• Relational databases and SQL; basic knowledge of NoSQL (MongoDB, Redis).
• Git, branching strategies and pull-request workflow.
• SDLC models (Agile / Scrum, Waterfall) and where each fits.
• CI/CD concepts and at least one tool (Jenkins, GitLab CI, GitHub Actions); build tools Maven / Gradle.
• Linux command line and basic server administration.
• Practical use of AI coding assistants in daily work, with the judgement to verify, test and secure AI-generated code
Good to have
• Docker, Kubernetes, Nginx.
• Microservices, message queues (Kafka, RabbitMQ).
• Cloud platforms (AWS, Azure, GCP) or government data-centre deployments.
• Front-end basics (JavaScript, React or Angular).
• Secure coding practices (OWASP Top 10), data privacy.
• Experience with government, NGO or development-sector projects (MIS, registries, biometric or payment systems).
Personal attributes
• Team player — works collaboratively, communicates openly, accepts and gives feedback.
• Critical thinker — questions requirements, analyses root causes and weighs trade-offs before coding.
• Fast learner — picks up new technologies on their own when the work demands it.
• Ownership — takes responsibility for code from design to production.
• Good written and spoken English and Bangla.