Senior Backend Software Engineer
Build systems that don’t break under scale. Own architecture, fix production fires, and make decisions that matter. If you’ve only built APIs, skip this. If you’ve owned systems, this is yours.
Role Summary
You will design, build, and operate backend systems that must scale, remain reliable under load, and evolve over time without collapsing under complexity.
This is not a feature factory role. You will own systems end-to-end, make architectural decisions under real constraints, and be accountable for how your code behaves in production.
If your experience is limited to building APIs without owning system behavior in production, this is not the role for you.
Responsibilities
Design and operate backend systems handling real production traffic, with clear understanding of bottlenecks, trade-offs, and failure modes
Own services end-to-end, including design, implementation, deployment, monitoring, and production stability
Debug and resolve production issues under pressure, including identifying root causes and implementing long-term fixes
Make architectural decisions balancing performance, cost, simplicity, and scalability
Continuously improve system reliability, latency, and efficiency
Define and enforce engineering standards through code reviews and design feedback
Mentor engineers by raising the bar, not by being polite
Push back on unclear or weak product and technical decisions when needed
Use AI tools to accelerate development and reasoning, without outsourcing critical thinking
Requirements (Non-Negotiable)
System Design & Scale
Have designed and operated backend systems handling meaningful production scale (high request volume, large datasets, or multi-tenant systems)
Can clearly explain:
System architecture you designed
Bottlenecks you encountered
Trade-offs you made (latency, consistency, cost, complexity)
Experience evolving systems over time, not just building greenfield projects
Distributed Systems & Data
Hands-on experience dealing with data consistency, concurrency, and failure scenarios in production
Understand practical implications of:
Eventual consistency
Idempotency
Retries and failure handling
Experience using queues, background processing, and asynchronous workflows in real systems
Can explain where distributed systems add value and where they introduce unnecessary complexity
Production Ownership
Have been directly responsible for production incidents, including:
Debugging under pressure
Mitigation and recovery
Root cause analysis
Comfortable being accountable for uptime, performance, and system health
Experience using logs, metrics, and tracing to diagnose issues
Understand how systems fail, not just how they work
Performance & Efficiency
Experience identifying and fixing performance bottlenecks (CPU, memory, I/O, database, network)
Have improved systems in measurable ways (latency reduction, cost optimization, throughput increase)
Understand trade-offs between performance, cost, and complexity
Ownership & Decision-Making
Owns systems, not just tasks
Makes decisions under constraints and accepts responsibility for outcomes
Can justify technical choices clearly, including what was not chosen and why
Can move forward without perfect requirements
Engineering Quality & Leadership
Sets and enforces code quality standards through reviews
Writes code that is maintainable, testable, and production-ready
Identifies weak designs and pushes for better alternatives
Raises the capability of the team
Architecture Judgment
Experience working with microservices, monoliths, or hybrid systems
Knows when to avoid unnecessary complexity
Has simplified or refactored over-engineered systems
Understands long-term cost of architectural decisions
AI-Assisted Development (Required)
Actively uses tools such as Claude, Cursor, GitHub Copilot, or similar in daily work
Uses AI for:
Faster iteration and prototyping
Debugging and exploring edge cases
Evaluating implementation or architecture options
Can demonstrate specific examples where AI improved development speed or decision-making
Critically evaluates AI-generated output:
Identifies incorrect assumptions
Verifies correctness before using in production
Does not rely on AI for fundamental reasoning or system design
Baseline
Strong fundamentals in data structures, algorithms, and software design
Typically 7+ years of backend experience, but depth matters more than years
Nice-to-Have (Strong Signals)
Experience operating systems at high scale (large traffic, large datasets, or strict SLAs)
Experience with cloud infrastructure (AWS, GCP, Azure)
Experience with containerized environments and orchestration (Docker, Kubernetes)
Experience migrating systems (monolith to distributed, or simplifying distributed systems)
Experience reducing infrastructure cost or significantly improving performance
Experience working in fast-moving product environments
What We Don’t Want
Engineers who have only built CRUD APIs without owning system behavior in production
Engineers who cannot debug production issues independently
Engineers who rely on tools, frameworks, or AI without understanding underlying systems
What Success Looks Like
You design systems that scale without constant firefighting
You improve performance, reliability, or cost in measurable ways
You make decisions that simplify systems over time, not complicate them
Other engineers become stronger because you are on the team
What We Offer
Work That Actually Matters
You will work on real systems used in production by international clients, not internal tools or low-impact features
You will face real engineering problems, scaling, performance, reliability, not just API wiring
Your decisions will have visible impact, both when things go right and when they fail
Engineering Culture
Developer-first environment where technical decisions are respected and driven by reasoning, not hierarchy
High ownership culture, you are trusted to make decisions and expected to take responsibility for outcomes
You will work with engineers who care about system design, code quality, and long-term maintainability
Growth comes from solving hard problems, not attending training sessions
Growth & Career Progression
Clear, merit-based growth, strong engineers move faster based on impact, not tenure
Opportunity to influence architecture and technical direction, not just implement tasks
Continuous exposure to complex systems that push your technical limits
Compensation & Benefits
The salary range starts from 1,50,000৳ depending on skills and experience.
Performance-based yearly salary increments
Two Eid bonuses annually
Leave & Flexibility
Five-day work week, weekends off (Saturday and Sunday)
Flexible working hours
20 days of paid annual leave
Public holidays as per government policy
Leave encashment options
Family & Wellbeing
Six months of maternity leave
Two weeks of paternity leave
Childbirth bonus
Marriage bonus
Ramadan Cost Adjustment.
Supplemental Security Income - QAQI (Quarterly salary Adjustment and Quarterly salary Increment) and based on dependent family members
Hospitalization coverage for:
Self
Spouse
Children
Parents (including spouse’s parents)
Work Environment
Fully subsidized lunch, snacks, and beverages
Regular team events and company gatherings, including cross-border & international gatherings!
Collaborative environment focused on engineering excellence
Global Exposure
Work with international clients and distributed teams
Opportunities for short-term or long-term work abroad
What This Is Not
Not a place where you hide behind tickets
Not a place where someone else owns production issues
Not a place where average performance is acceptable
- Department
- Software Engineering
- Locations
- Bangladesh
Colleagues
About Craftsmen
Craftsmen was established on the perfect blend of highly skilled engineers having over a decade of experience providing premium technology solutions to the leading companies across the globe.
Craftsmen is continuously engaged to invent new ways to help customers increase operational efficiency and excellence through technology.