General Summary
The Software Engineer (Full Stack) will be responsible for designing, developing, testing, and maintaining enterprise-grade full-stack solutions. This role emphasizes hands-on coding (80% of time), peer code reviews, pull request management, and architectural discussions with stakeholders. You will contribute to the development of large-scale, data-driven SaaS solutions using industry best practices including TDD, DRY, KISS, YAGNI, and SOLID principles.
The ideal candidate is an experienced full-stack developer who thrives in a fast-paced, Agile environment and leverages modern development tools and methodologies to deliver highquality, scalable solutions.
Essential Job Functions
Essential functions are the basic job duties that an employee must be able to perform, with or without reasonable accommodation. The function is considered essential if the reason the position exists is to perform that function.
1. Design, develop, and maintain scalable, high-performance applications using Python and Django framework.
2. Build responsive, accessible, and dynamic user interfaces using React, TypeScript, and modern front-end best practices.
3. Implement and integrate GraphQL APIs for efficient data querying, real-time updates, and optimized client-server communication.
4. Apply software design patterns (Factory, Singleton, Observer, Strategy, Repository, Decorator, and Adapter) to ensure maintainable, scalable, and extensible code architecture.
5. Develop and manage RESTful APIs for seamless integration with third-party services and internal microservices.
6. Design, optimize, and maintain SQL databases including PostgreSQL, MySQL, and MSSQL, ensuring data integrity, performance tuning, and efficient query execution.
7. Utilize version control systems (primarily Git) following Git Flow or trunk-based development workflows for collaborative development.
8. Work within Agile methodologies such as Scrum or Kanban, actively participating in daily stand-ups, sprint planning, backlog grooming, and retrospectives.
9. Write and maintain comprehensive unit tests, integration tests, and end-to-end tests following Test-Driven Development (TDD) principles to ensure code quality and reliability.
10. Collaborate effectively with cross-functional teams including Product Managers, DevOps Engineers, QA Engineers, and UI/UX Designers to deliver high-quality, user-centric products.
11. Participate in code reviews, providing constructive feedback and ensuring adherence to coding standards, security guidelines, and architectural principles.
12. Document technical specifications, API contracts, system architecture, and code implementations to facilitate knowledge sharing and maintainability.
Supportive Job Functions
These tasks do not meet the Americans with Disabilities Act definition of essential job functions and usually equal 5% or less of time spent. However, these tasks still constitute important performance aspects of the job.
1. Remain knowledgeable of emerging technologies, industry trends, and their potential impact on internal systems and development practices.
2. Participate in knowledge-sharing sessions, technical workshops, and team learning initiatives.
3. Available to work on-call when needed to address production issues and critical incidents.
4. Contribute to process improvements, tooling enhancements, and team efficiency initiatives.
5. Perform other miscellaneous duties as assigned by management to support organizational objectives.
Required Skills and Technical Competencies
Core Technical Skills (Required)
1. Strong proficiency in Python and Django framework, with a solid understanding of Object-Oriented Programming (OOP) principles, design patterns, and architectural best practices.
2. Expertise in JavaScript, TypeScript, and React (including hooks, context API, and state management), with a focus on building performant, maintainable front-end applications.
3. Hands-on experience with GraphQL for efficient data querying, mutations, subscriptions, and schema design.
4. Deep understanding of software design patterns including Factory, Singleton, Observer, Strategy, Repository, Decorator, and Adapter patterns to create scalable and maintainable code architectures.
5. Proficiency in building and integrating RESTful APIs, understanding HTTP methods, status codes, authentication mechanisms, and API versioning strategies.
6. Experience working with SQL databases such as PostgreSQL, MySQL, and MSSQL, including database design, query optimization, indexing strategies, and performance tuning.
7. Familiarity with version control systems, especially Git, including branching strategies, merge conflict resolution, and collaborative workflows.
8. Experience working within Agile methodologies such as Scrum or Kanban, with understanding of Agile ceremonies, sprint cycles, and iterative development.
9. Strong grasp of Test-Driven Development (TDD) principles, including writing unit tests, integration tests, and maintaining high code coverage.
Good-to-Have Skills (Preferred)
10. Experience with AI-assisted development tools such as Cursor IDE, GitHub Copilot, Model Context Protocol (MCP), or similar AI-powered coding assistants to enhance development velocity, code quality, and problem-solving efficiency. (The company actively leverages AI tools in the development workflow.)
11. Experience with Next.js for server-side rendering (SSR), static site generation (SSG), and building modern React applications with optimal performance.
12. Knowledge of cloud infrastructure platforms such as AWS (Amazon Web Services) or GCP (Google Cloud Platform), including services like EC2, S3, Lambda, RDS, CloudWatch, or equivalent GCP services.
13. Familiarity with NoSQL databases such as MongoDB, DynamoDB, Cassandra, or Redis for specific use cases requiring flexible schema design or high-throughput operations.
14. Experience with CI/CD pipelines using tools like GitHub Actions, GitLab CI/CD, Jenkins, CircleCI, or Azure DevOps for automated testing, building, and deployment.
15. Knowledge of containerization technologies such as Docker and orchestration platforms like Kubernetes for deploying and managing scalable, cloud-native applications.
16. Experience with microservices architecture and event-driven systems using message brokers such as Apache Kafka, RabbitMQ, AWS SQS, or Google Pub/Sub.
17. Knowledge of caching technologies such as Redis, Memcached, or Varnish to improve application performance and reduce database load.
18. Understanding of authentication and authorization mechanisms including OAuth 2.0, JWT (JSON Web Tokens), SSO (Single Sign-On), SAML, and OpenID Connect.
19. Adherence to API security best practices following OWASP guidelines, including protection against common vulnerabilities such as SQL injection, XSS, CSRF, and implementing proper rate limiting and input validation.
20. Experience with Infrastructure as Code (IaC) tools such as Terraform, AWS CloudFormation, Pulumi, or Ansible for provisioning and managing infrastructure programmatically.
21. Familiarity with performance monitoring and observability tools such as New Relic, Datadog, Prometheus, Grafana, Sentry, or ELK Stack for application performance monitoring (APM) and troubleshooting.
22. Experience with WebSocket or Server-Sent Events (SSE) for implementing real-time features and bidirectional communication.
23. Knowledge of front-end build tools and bundlers such as Webpack, Vite, Rollup, or esbuild for optimizing development workflows.
Required Abilities and Professional Competencies
1. Ability to organize, prioritize, and manage multiple assignments concurrently while meeting deadlines in a fast-paced environment.
2. Strong interpersonal and communication skills, with the ability to articulate technical concepts clearly to both technical and non-technical stakeholders.
3. Ability to interact professionally with a diverse group of clients, team members, and stakeholders across different geographies and cultures.
4. Flexibility to work both on-site and remotely, adapting to hybrid work arrangements as needed.
5. Ability to coordinate with cross-functional teams, provide technological leadership, and mentor junior developers when required.
6. Capacity to work in a complex, dynamic team environment with minimal supervision, demonstrating self-direction and initiative.
7. Strong problem-solving and analytical skills, with the ability to debug complex issues and propose effective solutions.
8. Excellent organizational skills and attention to detail, ensuring code quality, documentation accuracy, and adherence to best practices.
9. Commitment to continuous learning and staying current with evolving technologies, frameworks, and industry trends.
Education, Experience, and Certification
Minimum requirements needed to perform the job.
1. Associate's or Bachelor's degree preferred in Computer Science, Software Engineering, Information Technology, or related technical field. Equivalent work experience in a technology-related area may substitute for formal education.
2. 2+ years of relevant professional experience in full-stack software development (required).
3. Demonstrated experience using version control systems (Git) daily in a professional development environment.
4. Hands-on experience with Python, JavaScript, and React in production environments (required).
5. Experience using rapid application development frameworks such as Django, Flask, FastAPI, or similar Python frameworks (required).
6. Experience using modern front-end build tools and development workflows including bundlers, transpilers, and package managers (npm, yarn, pnpm).
7. Relevant certifications (optional but beneficial): AWS Certified Developer, Google Cloud Professional, Certified Kubernetes Administrator (CKA), or similar technical certifications.
Scope of Job
1. No direct reports – This is an individual contributor role.
2. No supervisory responsibility – Focus is on technical delivery and collaboration.
3. Consistent work schedule with minimal travel required (typically <10% travel within Canada and the United States for team meetings, conferences, or client engagements).
4. High-impact role – Errors may be serious, costly, and difficult to discover, requiring attention to detail and adherence to quality standards.
5. Frequent collaboration – Regular contact with internal teams and external stakeholders is expected.
6. Access to confidential data – Position may involve handling sensitive company information, client data, or proprietary systems requiring discretion and adherence to security protocols.
Disclaimer
Data Axle India follows a merit-based employee recruitment practice with extensive screening steps. Data Axle India does not charge or accept any amount or security deposit from job seekers during the recruitment process.
Job seekers are requested to be aware of unsolicited or fraudulent communication regarding job offers or interview calls against payment of money. Please stay alert.
All Data Axle jobs are published on the Careers page of its website and/or on its LinkedIn profile. Interested job seekers may access the same and apply directly.
If you believe you have been a victim of recruitment fraud, you are requested to approach law enforcement agencies immediately.