The Senior Software Engineer will be responsible for designing, developing, testing, and maintaining full-stack solutions. This role involves hands-on coding (80% of time) , performing peer code reviews , handling pull requests , and engaging in architectural discussions with stakeholders. You'll contribute to the development of large-scale, data-driven SaaS solutions using best practices like TDD, DRY, KISS, YAGNI , and SOLID principles . The ideal candidate is an experienced full-stack developer who thrives in a fast-paced, Agile environment. Essential functions 1. Design, develop, and maintain scalable applications using Python and Django. 2. Build responsive and dynamic user interfaces using React and TypeScript. 3. Implement and integrate GraphQL APIs for efficient data querying and real-time updates. 4. Apply design patterns such as Factory, Singleton, Observer, Strategy, and Repository to ensure maintainable and scalable code. 5. Develop and manage RESTful APIs for seamless integration with third-party services. 6. Design, optimize, and maintain SQL databases like PostgreSQL, MySQL, and MSSQL. 7. Use version control systems (primarily Git) and follow collaborative workflows. 8. Work within Agile methodologies such as Scrum or Kanban, participating in daily stand-ups, sprint planning, and retrospectives. 9. Write and maintain unit tests, integration tests, and end-to-end tests, following Test-Driven Development (TDD). 10. Collaborate with cross-functional teams, including Product Managers, DevOps, and UI/UX Designers, to deliver high-quality products 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.