Senior Full Stack Software Engineer – Passenger Flow Modelling
We are seeking a Senior Full Stack Engineer with a strong foundation in Python development and experience in mathematical modelling for a short-term project focused on passenger flow modelling. The primary task will involve interpreting pre-defined modelling logic and translating it into an efficient, Python-based solution, which will then be integrated with an existing UI (ReactJS) and API.
This is an ideal opportunity for someone who excels in backend development, is comfortable with integration work, and has experience with large-scale, performant systems.
Key Responsibilities:
- Interpret and Implement Mathematical Logic: Understand and translate pre-defined passenger flow modelling logic into efficient Python code.
- Backend Development: Build robust and maintainable backend components, utilizing Python-based frameworks like Flask, FastAPI, or Django.
- API Integration: Develop and integrate with existing RESTful APIs, ensuring seamless data flows between backend and frontend components.
- UI Integration: Collaborate with front-end developers to ensure proper integration of backend logic with the ReactJS user interface.
- Optimization: Continuously optimize the Python code for performance, ensuring minimal computational cost and maximal scalability.
- Collaboration: Work closely with project stakeholders to refine requirements, align expectations, and deliver on technical needs.
- Documentation and Code Quality: Write high-quality, maintainable code with thorough documentation. Conduct code reviews to ensure best practices are followed.
Required Skills and Qualifications:
- Advanced Python skills with experience in backend frameworks like Flask, FastAPI, or Django.
- Ability to write efficient, reusable, and scalable code.
- Experience with libraries like NumPy, Pandas, SciPy, or any others commonly used in data processing or modelling.
- Strong understanding of data structures, algorithms, and complexity analysis.
Mathematical or Computational Modelling:
- Experience with implementing mathematical models in Python, particularly in fields such as transportation or flow analysis.
- Ability to interpret and convert pre-defined modelling logic into working code.
Full Stack Development:
- Proven experience in full stack development, with the ability to work on both backend (Python) and frontend (ReactJS).
- Familiarity with state management tools such as Redux or React Query.
- Experience working with REST APIs, integrating backend logic with UI components and ensuring smooth data flow between systems.
- Solid understanding of SQL and/or NoSQL databases (e.g., MySQL, PostgreSQL, MongoDB).
- Experience designing data models and optimizing queries for performance.
Cloud and Containerization:
- Experience working with cloud platforms like AWS, Azure, or Google Cloud.
- Familiarity with Docker, Kubernetes, or other containerization technologies, particularly for deployment and scaling of applications.
- Proficiency in Git for version control.
- Experience with CI/CD pipelines for streamlined development and deployment processes.
- Strong analytical and problem-solving skills, with the ability to optimize code for performance and scalability.
- Familiarity with performance optimization techniques for computational models, particularly when dealing with large datasets or complex calculations.
- Excellent communication skills, with the ability to collaborate effectively with cross-functional teams, including front-end developers, project managers, and stakeholders.
- Ability to document and explain complex technical concepts clearly.
Nice to Have:
- Experience with transportation or logistics systems, particularly related to passenger flow, traffic analysis, or queueing theory.
- Familiarity with integrating Python-based models into enterprise systems and understanding the challenges around this process.
Location:
- Hybrid. Office located in London. (Hayes area).
- Office presence required: Yes.
- Frequency: 2-3 times a week at the office.
Some of the benefits you’ll enjoy working with us:
- The chance to join an organization with triple-digit growth that is changing the paradigm on how software products are built.
- The opportunity to form part of an amazing, multicultural community of tech experts.
- A highly competitive compensation package.