Software Engineer
The Role: Software Engineer
We are seeking a skilled Software Engineer to join our Data Science & Technology team, dedicated to advancing evidence-based decision-making for social impact. You will be responsible for building an autonomous system that ingests massive volumes of disparate data. This includes text documents, spreadsheets, and other forms of data to synthesize high-stakes actionable insights. This is a multi-agent system designed to reason, verify, and create.
Collaborating with cross-functional teams, you will design and build responsive, full stack solutions to develop robust, user-focused applications. We seek creative problem-solvers who are driven to innovate and committed to making a meaningful difference in a dynamic, mission-driven environment.
Required Skills
- Bachelor’s degree in Computer Science, Software Engineering, or a related field (or equivalent experience).
- Expertise in Python for backend development, with a specific focus on building high-performance asynchronous services and data processing scripts.
- Experience with LangGraph or similar frameworks to design stateful, multi-agent workflows that can plan, execute, and self-correct.
- Hands-on experience with Vector Databases such as Qdrant, ChromaDB, or Weaviate for semantic retrieval and long-term memory management.
- Experience with Model Context Protocol (MCP) to enable agents to interact seamlessly with local files, databases, and web-based research tools.
- Strong understanding of Ragas or DeepEval to implement automated evaluation frameworks for measuring the accuracy and faithfulness of generated text.
- Deep intuition for RAG (Retrieval-Augmented Generation) architectures, including hybrid search, reranking, and query expansion techniques.
- Basic knowledge of backend technologies, including Python-based frameworks like Django, Flask, or FastAPI, as well as REST APIs.
- Familiarity with databases such as MongoDB or PostgreSQL, including basic querying and data modeling.
- Strong problem-solving skills and eagerness to learn in a fast-paced environment.
Preferred Skills
- Proficiency in Knowledge Graph integration using Neo4j or FalkorDB to maintain logical relationships between disparate entities.
- Exposure to deployment and infrastructure tools, including AWS, Docker, Nginx, Linux environments, or CI/CD pipelines.
- Knowledge of PyTorch or JAX for fine-tuning open-source models on domain-specific corpora.