Skip to content

Software Engineer · Bangladesh

I build reliable software for real-world problems.

Java & Spring Boot · Backend & Full-Stack · GIS & Emerging AI

Software engineer with 2+ years of professional experience building backend-heavy systems in Java and Spring Boot — REST APIs, PostgreSQL/PostGIS data models, GIS and mapping platforms, and the Angular/Next.js frontends that sit on top of them. Based in Bangladesh, working toward AI and research.

  • Java
  • Spring Boot
  • PostgreSQL
  • PostGIS
  • Angular
  • Next.js
  • Docker
  • Nginx

About

Backend engineer by trade, systems thinker by habit.

I'm a software engineer from Bangladesh. For the last two-plus years I've been building enterprise software professionally — mostly in Java and Spring Boot, with PostgreSQL underneath and Angular or Next.js on top. A lot of that work has been GIS-related: POI management, mapping platforms, spatial data pipelines on PostGIS and OpenStreetMap, and the administrative systems that keep them running.

I studied Computer Science and Engineering at Daffodil International University (BSc, CGPA 3.71). University gave me the fundamentals; work taught me that the hard part is rarely the algorithm — it's the schema that has to survive three years of feature requests, the API contract other teams depend on, and the server that needs to stay up at 2 a.m.

The problems I enjoy most sit at the boundary between data and product: designing a database so that a query stays fast as the dataset grows, integrating a third-party API that doesn't behave the way its docs say, or turning a vague requirement into a clean REST contract. I care about security and deployment as much as features — I've configured the Linux boxes, Nginx reverse proxies and Docker images my code runs on.

Alongside that, I've been steadily learning about artificial intelligence — NLP and reinforcement learning in particular — and about software architecture at a deeper level. I'm not an AI expert and won't pretend to be; I'm an engineer who wants to understand these systems well enough to build with them responsibly. Longer term, I plan to pursue higher studies and a career that combines software engineering, AI and research.

Role
Software Engineer
Experience
2+ years professional
Education
BSc in CSE, Daffodil International University
Focus
Java · Spring Boot · PostgreSQL/PostGIS
Exploring
AI · NLP · Reinforcement Learning
Based in
Bangladesh

Journey

From CS fundamentals to production systems — and onward to AI.

Education, professional work and self-directed learning. Expand any entry for details.

  1. 2024 — PresentLearning

    Learning AI, NLP & Reinforcement Learning

    Self-directed study

    Structured self-study alongside full-time work: machine learning foundations, NLP, reinforcement learning, and AI-assisted development workflows.

    Toggle details
    • Working through ML/NLP fundamentals with a focus on understanding models well enough to build with them — not just calling APIs.
    • Exploring reinforcement learning as a long-term research interest.
    • Using AI-assisted development tools day-to-day and forming opinions on where they help and where they don't.
    • [PLACEHOLDER] Add specific courses, books or projects once you want them public.
    • Machine Learning
    • NLP
    • Reinforcement Learning
    • Research
  2. 2022 — PresentWork

    Software Engineer

    [PLACEHOLDER] Company name

    Backend-focused engineer on enterprise and GIS products: Spring Boot services, PostgreSQL/PostGIS data models, REST APIs consumed by Angular and Next.js frontends, and the Docker/Nginx deployments behind them.

    Toggle details
    • Designed and built REST APIs with Spring Boot, Spring MVC and Hibernate/JPA for enterprise management and administrative systems.
    • Built GIS features on PostGIS and OpenStreetMap data — POI management, spatial queries, and mapping solutions.
    • Integrated third-party APIs and implemented authentication, authorization (RBAC) and API security.
    • Handled deployment: Docker images, Ubuntu servers, Nginx reverse proxy configuration.
    • Wrote tests and participated in code review, Git/GitLab workflows and releases.
    • Java
    • Spring Boot
    • PostgreSQL
    • PostGIS
    • Angular
    • Docker
    • Nginx
  3. 20XX — 20XXEducation

    BSc in Computer Science & Engineering

    Daffodil International University

    Graduated with a CGPA of 3.71. Core coursework in data structures, algorithms, databases, software engineering and networks.

    Toggle details
    • CGPA 3.71 / 4.00
    • [PLACEHOLDER] Thesis / final-year project title and one-line description.
    • [PLACEHOLDER] Notable coursework, clubs, or competitions.
    • Computer Science
    • Software Engineering

Skills

A backend core with enough breadth to ship the whole thing.

Grouped by where I use them. Levels describe real experience — not percentages.

ProductionWorkingFamiliarLearning

Backend

Where I spend most of my time. Services, data access, API contracts.

  • JavaProduction
  • Spring BootProduction
  • Spring MVCProduction
  • Hibernate / JPAProduction
  • REST API designProduction
  • API security & authWorking
  • TestingWorking

Frontend

Enough to own a feature end-to-end and talk to frontend engineers properly.

  • JavaScriptProduction
  • AngularWorking
  • Next.jsWorking
  • HTML / CSSProduction
  • BootstrapWorking
  • TypeScriptWorking

Database & GIS

Relational modelling plus the spatial layer most backend engineers never touch.

  • PostgreSQLProduction
  • PostGISProduction
  • Spatial SQLWorking
  • OpenStreetMap dataWorking
  • GIS data processingWorking
  • Query optimisationWorking

DevOps & Infrastructure

I deploy what I build. Not a platform engineer — but I own my services in production.

  • DockerWorking
  • Linux / UbuntuWorking
  • NginxWorking
  • GitProduction
  • GitLab / GitHubProduction
  • CI/CD basicsFamiliar

Currently Exploring

Actively learning. Listed honestly as areas of study, not claims of expertise.

  • Machine LearningLearning
  • NLPLearning
  • Reinforcement LearningLearning
  • AI-assisted developmentFamiliar
  • Software architectureLearning

Projects

Systems I've built and the problems behind them.

Described by engineering scope rather than client names. Expand a card for the problem, my role and the hard parts.

GIS · Mapping

POI Management Platform

Backend and admin tooling for managing points of interest on top of PostGIS and OpenStreetMap data, with spatial search APIs for client applications.

  • Java
  • Spring Boot
  • JPA
  • PostgreSQL
  • PostGIS
  • OpenStreetMap
  • +2
Details

Problem

POI data arrives from multiple sources in inconsistent formats, needs de-duplication and categorisation, and must be queryable by location fast enough to power a map UI.

My role

Backend engineer — data model, import pipeline, spatial REST APIs, admin endpoints.

Key features

  • Nearby / within-polygon search endpoints
  • Category and attribute filtering
  • Bulk import with validation reports
  • Admin CRUD with audit fields and RBAC

Technical challenges

  • Keeping radius and bounding-box queries fast as the POI table grew — GiST indexes and geography vs. geometry choices mattered.
  • Normalising OSM tags into an internal category taxonomy without losing source fidelity.
  • Designing an import process that could be re-run safely (idempotent upserts) as source data changed.

Architecture

Spring Boot service behind Nginx; PostgreSQL 15 + PostGIS; scheduled import jobs; Angular admin client.

Stack

  • Java
  • Spring Boot
  • JPA
  • PostgreSQL
  • PostGIS
  • OpenStreetMap
  • Angular
  • Docker
Read the case study
Enterprise · Backend

Enterprise Administrative System

Role-based administrative platform for internal operations: users, organisations, permissions, workflows and reporting, exposed as a REST API to a web frontend.

  • Java
  • Spring Boot
  • Spring MVC
  • Hibernate
  • PostgreSQL
  • JWT
  • +2
Details

Problem

Internal processes were spread across spreadsheets and ad-hoc tools; the organisation needed a single system with proper access control and an audit trail.

My role

Backend engineer — domain model, REST API, authentication/authorization, deployment.

Key features

  • JWT authentication with refresh flow
  • Role- and permission-based access control
  • Paginated, filterable resource endpoints
  • Audit logging for sensitive actions

Technical challenges

  • Modelling permissions so that new roles could be added without code changes.
  • Keeping list endpoints responsive with server-side pagination, filtering and sorting on large tables.
  • Hardening the API: validation, rate limiting at the proxy, consistent error responses.

Stack

  • Java
  • Spring Boot
  • Spring MVC
  • Hibernate
  • PostgreSQL
  • JWT
  • Angular
  • Nginx
Read the case study
GIS · Data

Mapping & Spatial Data Solution

Processing and serving spatial datasets (boundaries, roads, layers) for map-based applications, with PostGIS as the source of truth.

  • PostgreSQL
  • PostGIS
  • Java
  • Spring Boot
  • OpenStreetMap
  • GeoJSON
  • +1
Details

Problem

Large spatial datasets needed to be imported, cleaned, and served to a map client in a form that stayed responsive at different zoom levels.

My role

Backend / GIS engineer — data processing, spatial schema, tile/feature endpoints.

Key features

  • GeoJSON feature endpoints with bounding-box filtering
  • Geometry simplification per zoom
  • Layer and attribute management

Technical challenges

  • Handling large source files during import without exhausting memory — streaming instead of loading whole files.
  • Simplifying geometries per zoom level to keep payloads small.
  • Coordinate reference system mismatches between sources.

Stack

  • PostgreSQL
  • PostGIS
  • Java
  • Spring Boot
  • OpenStreetMap
  • GeoJSON
  • Linux

More work

Integration · Backend

Third-Party API Integration Layer

A resilient integration layer wrapping external service APIs — retries, timeouts, mapping to internal models, and secure credential handling.

  • Java
  • Spring Boot
  • REST
  • OAuth2 / API keys
  • +1
Details

Problem

Core features depended on external APIs with inconsistent uptime and evolving contracts; failures were leaking into user-facing flows.

My role

Backend engineer — client design, error handling, monitoring hooks.

Key features

  • Typed clients with timeouts and retries
  • Secret management via environment
  • Structured logging of upstream errors

Technical challenges

  • Isolating external failures so they degrade one feature instead of the whole request.
  • Versioning the mapping layer as upstream contracts changed.

Stack

  • Java
  • Spring Boot
  • REST
  • OAuth2 / API keys
  • Docker
Enterprise · GIS

Trip Management System

[PLACEHOLDER] Short description of the trip management system you worked on.

  • Java
  • Spring Boot
  • PostgreSQL
  • PostGIS
Details

Problem

[PLACEHOLDER] What problem did it solve?

My role

[PLACEHOLDER] Your role.

Key features

  • [PLACEHOLDER] Key feature.

Technical challenges

  • [PLACEHOLDER] Key technical challenge.

Stack

  • Java
  • Spring Boot
  • PostgreSQL
  • PostGIS
Enterprise

Ticketing System

[PLACEHOLDER] Short description of the ticketing system.

  • Java
  • Spring Boot
  • PostgreSQL
  • Angular
Details

Problem

[PLACEHOLDER] What problem did it solve?

My role

[PLACEHOLDER] Your role.

Key features

  • [PLACEHOLDER] Key feature.

Technical challenges

  • [PLACEHOLDER] Key technical challenge.

Stack

  • Java
  • Spring Boot
  • PostgreSQL
  • Angular
Enterprise

Inventory Management System

[PLACEHOLDER] Short description of the inventory system.

  • Java
  • Spring Boot
  • Hibernate
  • PostgreSQL
Details

Problem

[PLACEHOLDER] What problem did it solve?

My role

[PLACEHOLDER] Your role.

Key features

  • [PLACEHOLDER] Key feature.

Technical challenges

  • [PLACEHOLDER] Key technical challenge.

Stack

  • Java
  • Spring Boot
  • Hibernate
  • PostgreSQL
Learning · AI

AI / NLP Experiments

[PLACEHOLDER] Small experiments while learning ML/NLP — e.g. a text classifier, an RL environment, or an LLM-assisted tool. Add one when you have it.

  • Python
  • [PLACEHOLDER]
Details

Problem

[PLACEHOLDER] What were you trying to learn or test?

My role

Solo — learning project.

Key features

  • [PLACEHOLDER]

Technical challenges

  • [PLACEHOLDER]

Stack

  • Python
  • [PLACEHOLDER]

Case studies

How I think through a problem — not just what I shipped.

Problem → Architecture → Implementation → Challenges → Solution → Result. Three recurring themes from my work.

REST API designPostGISPostgreSQL optimisationGIS data processingLarge file handling

Designing a fast spatial search API on PostGIS

REST API design · Database design · PostGIS · Query optimisation · GIS data processing

Spatial API architectureWeb and mobile map clients call an Nginx reverse proxy, which forwards to a Spring Boot POI service. The service queries PostgreSQL with PostGIS using a GiST index. A scheduled import pipeline loads OpenStreetMap extracts and internal sources into the same database.Map clientsAngular · mobileNginxTLS · cachePOI serviceSpring Boot · RESTPostgreSQLPostGIS · GiST indexOSM extracts.pbf / .osmImport jobstream · upsertST_DWithin · &&JSONgeography4326
Architecture sketch — simplified
  1. 01Problem

    A map-based product needed to answer “what points of interest are near this location?” and “what is inside this area?” for a growing dataset, with results returned quickly enough to feel instant as the user pans. POI data came from OpenStreetMap extracts and internal sources with different schemas.

  2. 02Architecture

    A single Spring Boot service owns the POI domain. PostgreSQL with PostGIS is the source of truth; a scheduled import pipeline normalises source data into it. Clients (Angular admin, mobile/web map) talk only to the REST API through an Nginx reverse proxy.

    • Geometry stored as geography(Point, 4326) so distance queries are in metres without manual reprojection.
    • GiST index on the geometry column; B-tree indexes on category and status for combined filters.
    • Read endpoints are stateless and cacheable at the proxy for identical bounding boxes.
  3. 03Implementation

    Spatial queries are written as native queries in Spring Data repositories rather than forced through JPQL, keeping the SQL explicit and easy to EXPLAIN. Bounding-box requests use ST_MakeEnvelope + the && operator to hit the index first, then ST_DWithin for exact radius filtering.

    SELECT id, name, category,
           ST_Distance(geom, ST_MakePoint(:lng, :lat)::geography) AS distance_m
    FROM   poi
    WHERE  status = 'ACTIVE'
      AND  ST_DWithin(geom, ST_MakePoint(:lng, :lat)::geography, :radius_m)
    ORDER  BY distance_m
    LIMIT  :limit;
  4. 04Challenges

    The obvious approach worked on a small table and fell over as data grew.

    • ORDER BY distance over a large radius forced full sorts — solved by tightening the radius server-side and paginating with a distance cursor.
    • Importing multi-gigabyte OSM extracts through the ORM was slow and memory-hungry — replaced with streaming parsing and batched COPY-style inserts.
    • Mixed SRIDs from different sources produced silently wrong distances until validation was added at import time.
  5. 05Solution

    Explicit SQL with the right index types, a streaming import pipeline with idempotent upserts, and API contracts that constrain what clients can ask for (max radius, max page size). Validation happens once at the boundary, so the query path stays simple.

  6. 06Result

    Nearby and area queries stayed responsive as the dataset grew, and imports became a routine scheduled job instead of a manual event. [PLACEHOLDER] Add measured numbers here if you have them — e.g. p95 latency before/after, dataset size, import time.

Engineering philosophy

A few things I've come to believe by shipping and maintaining software.

Not a manifesto — working rules that have saved me from repeating mistakes.

  1. 01

    Solve the business problem, not the ticket.

    The best code I've written was often less code — because I asked what the requester actually needed. A feature that ships and nobody uses is a maintenance cost, not a win.

  2. 02

    The schema outlives the code.

    Application code gets rewritten; databases get migrated, painfully. I spend disproportionate time on data models, constraints and indexes because that's where mistakes are most expensive.

  3. 03

    APIs are contracts.

    Consistent resource naming, predictable errors, pagination from day one, and no breaking changes without a version. Other teams should be able to build on my API without reading my source.

  4. 04

    Security is part of done.

    Validate at the boundary, scope every query by tenant, never trust IDs from the client, keep secrets out of images. It's cheaper to do this while writing the feature than after an incident.

  5. 05

    Measure before optimising.

    EXPLAIN ANALYZE before adding an index; a profiler before rewriting a loop. Most performance problems are one bad query, not an architecture problem.

  6. 06

    Boring infrastructure, deliberate choices.

    A well-configured Nginx, a slim Docker image and a tested backup beat a clever setup nobody else on the team can operate.

  7. 07

    Tests buy confidence to change things.

    I write tests where they pay for themselves: domain logic, API contracts, and anything I've been burned by before. Coverage numbers are not the goal.

  8. 08

    Keep learning in public with myself.

    I'm honest about what I know and what I'm still learning — that's the only way to actually get better, and it's how I want to approach AI and research too.

Learning & research

Where I am, and where I'm heading.

I'm a backend engineer learning AI seriously — not an AI expert. This roadmap is honest about the difference.

  1. Done

    Backend & data engineering in production

    • Java / Spring Boot services
    • PostgreSQL & PostGIS
    • REST API design & security
    • Docker, Linux, Nginx deployment
  2. Now (current stage)

    Machine learning & NLP fundamentals

    • ML foundations: models, training, evaluation
    • NLP: text processing, embeddings, transformers
    • AI-assisted development workflows
    • Software architecture: modular design, DDD
  3. Next

    Applied AI in real systems

    • Reinforcement learning fundamentals
    • Building AI features into backend services
    • Spatial + ML: GIS data with learned models
    • Small research-style projects with write-ups
  4. Horizon

    Higher studies & research

    • Graduate studies in CS / AI
    • Research at the intersection of software engineering, AI and GIS
    • Publishing and contributing back

Areas of interest

Artificial Intelligence
How systems learn, and how to engineer around their failure modes.
Natural Language Processing
Text understanding, retrieval, and language models in real products.
Reinforcement Learning
Decision-making under uncertainty — a long-term research interest.
Machine Learning
Foundations first: data, evaluation, and knowing when not to use ML.
GIS
Continuing to go deeper on spatial data, routing and geoprocessing.
Software Architecture
Designing systems that stay changeable as they grow.

Education & credentials

Degree, certifications and achievements.

Academic background, plus certifications, courses, publications and awards as they come.

  • Degree20XX

    BSc in Computer Science & Engineering

    Daffodil International University

    CGPA 3.71 / 4.00

  • Certification20XX

    [PLACEHOLDER] Certification name

    [PLACEHOLDER] Issuer

    Delete this entry or replace with a real certification.

  • Course20XX

    [PLACEHOLDER] Course name

    [PLACEHOLDER] Platform

  • Achievement20XX

    [PLACEHOLDER] Award, hackathon, publication or research item

    [PLACEHOLDER]

Contact

Let's talk about backend systems, GIS, or what you're building.

Open to software engineering roles, interesting projects, and conversations about AI and research. I reply to every serious message.

0/3000

Your details are only used to reply to you.