ICF seeking Full-Stack Software Engineer to design and implement AI-powered applications. Collaborating with teams to develop solutions for complex business challenges.
Responsibilities
Design, develop, and deploy end-to-end AI-powered web applications, from rapid prototypes to scalable production systems.
Collaborate with data scientists, AI researchers, and product managers to translate conceptual ideas into working software.
Build and integrate LLM and Generative AI solutions, leveraging frameworks like Hugging Face, LangChain, or similar open-source toolkits.
Develop Proof of Concepts (POCs) to validate ideas quickly while maintaining focus on feasibility and user experience.
Implement cloud-based AI services (AWS, GCP, Azure) for model deployment, scalability, and monitoring.
Maintain best practices for data handling, including data ingestion, preprocessing, and feature engineering.
Optimize application performance, security, and reliability across the full stack.
Communicate technical concepts clearly to non-technical stakeholders and contribute to team knowledge sharing.
Requirements
Bachelor's Degree
4+ years of proficiency in React, Next.js, Node.js, and Express.js for front-end and back-end development.
3+ years of strong programming experience in Python, with familiarity in frameworks and libraries such as TensorFlow, PyTorch, and Keras.
3+ years of experience with RDBMS (ideally both Oracle and PostgreSQL) and PL/SQL
3+ years of experience with RESTful API design, microservices architecture, CI/CD tools, methods and processes, including development of multi-environment pipelines (e.g., Jenkins, AWS CodePipeline), Configuration, and Containerization/Orchestration, including Docker & Kubernetes
Familiarity with cloud services (AWS, GCP, Azure), especially AI/ML platforms such as SageMaker or Azure ML Studio.
Software Engineer responsible for developing embedded OS and BSP for Satellogic's satellite computers. Collaborating with hardware teams and ensuring compatibility between software and electronics with a focus on innovation.
Lead Software Engineer overseeing resource management and technical leadership for web applications at Razer. Engage in collaborative efforts and manage complex, international projects in the gaming industry.
Senior Software Engineer responsible for designing, developing, and supporting software applications at a Brazilian company. Leading complex projects with minimal supervision in a hybrid work environment.
Software Engineer managing application development and maintenance in a technology portfolio. Leading projects and collaborating with both technical and business departments for effective software implementations.
Senior Software Engineer collaborating with global team to implement technical strategies and systems at Intrepid Travel. Focused on delivering value and enhancing travel experiences.
Lead Software Engineer at Luminor responsible for developing Recurring Payments solutions. Joining a dynamic bank focused on innovative fintech services in the Baltics.
Lead Software Engineer developing and integrating Recurring Payments solutions for Luminor Group. Collaborating with engineering teams, driving modern architectures and ensuring compliance in a regulated banking environment.
Lead Software Engineer developing Recurring Payments solutions with a focus on Java and Spring Boot for Luminor. Collaborate with cross - functional teams in a hybrid work environment.
Software Engineer developing backend solutions using C#, .NET, and cloud technologies in a modern microservices environment. Joining an international team focused on high - quality software solutions.
Data Modeler & Snowflake Sr Technical Lead - Data Engg at Birlasoft involved in data modeling, OLTP/OLAP modeling, and data mart/design responsibilities.