Full-Stack Software Developer

Full-Stack Software Developer

General Qualifications

  • Minimum of 3 years of professional experience in developing backend systems with Python.
  • Proven experience in building end-to-end web applications using the Django Framework.
  • Solid understanding of RESTful API design principles.
  • Familiarity with OpenAPI/Swagger specifications.
  • Experience working with or knowledge of cloud infrastructure (preferably AWS).
  • Hands-on experience in developing infrastructure for web and mobile applications.
  • Knowledgeable and sensitive about security and data protection.
  • Open to self-development and eager to learn new technologies.
  • Strong analytical thinking skills, result-oriented, and a team player.
  • Bachelor’s degree (or higher) in Computer/Software Engineering or a related field.
  • Willingness and ability to adapt to intensive and flexible working hours.
  •  

Key Responsibilities
 

API and Service Development

Design, implement, and maintain RESTful APIs using Python frameworks (Django, Flask, or FastAPI).

Develop clean, efficient, and well-documented code following best practices.

 

Database Design and Management

Work effectively with relational databases (preferably PostgreSQL) and/or NoSQL databases (preferably MongoDB, Cassandra).

Optimize and maintain databases, write complex SQL queries, and perform schema migrations.

 

System Architecture and Scalability

Make architectural decisions to build systems with high availability, fault tolerance, and horizontal scalability.

Apply caching strategies, queue systems (e.g., Redis, RabbitMQ), and background processing (e.g., Celery) to enhance system performance.

Develop unit and integration tests and conduct code reviews to ensure code quality.
 

Responsive Front-End Development

Design, develop, and deliver user interfaces using React (JS/TS).

Build mobile-first and responsive designs using CSS (Flexbox/Grid), Tailwind CSS, or Bootstrap.

Collaborate closely with UI/UX designers to translate Figma, Sketch, or Adobe XD designs into code, creating reusable and accessible components.
 

Testing and Performance

Write unit, integration, and end-to-end (e2e) tests using Jest, React Testing Library, or Cypress.

Improve application performance with React Profiler, code splitting (Lazy Loading), Suspense, and memoization techniques.

Manage application state effectively with Redux, Zustand, or Context API.

 

Location: Office – Anatolian Side, Istanbul