Get a reply from this employer
Your resume and cover letter, tailored to exactly what they’re hiring for.
Ethical Hat Security Pvt. Ltd. is hiring a full-stack Software Engineer to build and grow our web products, and to add AI features such as LLM-powered assistance and integrations.
The role is remote and focuses on secure development, REST APIs, and scalable architectures, with MCP server work and AI components to help customers leverage product data safely. You will collaborate across security, product, and engineering teams to deliver robust solutions.
Ethical Hat Security Pvt. Ltd. | Full time
EthicalHat is a global cybersecurity provider with delivery centers in California, USA and Gurugram, India. Our security operations center is run by analysts and engineers with deep experience in cyber defence, and our offensive, product, cloud and AI specialists work alongside them, so what we learn attacking systems makes us better at defending them.
This is a remote position.
We at ETHICALHAT Cyber Security are hiring a full-stack Software Engineer to build and grow our web products, and to add AI features to them: LLM-powered assistance, AI integrations, and an MCP server that lets AI assistants work with our product data safely.
• Design, build and maintain backend services and APIs.
• Build clean, responsive frontend screens.
• Design database schemas and write efficient queries.
• Build features such as dashboards, workflows, role-based access, file uploads and report exports (CSV, PDF, PPTX).
• Write data migration scripts when systems change.
• Build and document REST APIs and third-party integrations.
• Set up authentication: SSO (OIDC, SAML), MFA, role-based access control.
• Follow secure development practice: code reviews, dependency and SAST scanning, fixing reported vulnerabilities.
• Package and deploy releases for cloud and on-premises setups (Windows and Linux).
• Build AI assistants inside the product that answer user questions in plain language, grounded in our own data.
• Use LLMs to summarize data, draft reports and suggest next steps for users.
• Extract and classify information from uploaded documents, with a human confirming result.
• Measure AI quality and cost, and improve them release by release.
• Build and maintain an MCP (Model Context Protocol) server that exposes product data and actions as tools and resources.
• Let AI clients such as Claude, ChatGPT or IDE agents work with the product through that server.
• Enforce the same user roles and data boundaries in the MCP server as in the web app, with audit logs for every AI action.
• 3+ years building production web applications, end to end.
• Backend: Java (OpenJDK) and Groovy with the Grails framework.
• Databases: MariaDB (schema design, SQL, backup and restore with Mariabackup) and Neo4j (graph modelling, Cypher queries).
• Application server: Apache Tomcat, including TLS setup.
• Identity and access: Keycloak; SSO with OIDC and SAML using Okta, Microsoft Entra ID and Auth0; MFA and role-based access control.
• APIs: REST API design and documentation.
• Platforms: installing, upgrading and running applications on Windows Server and Linux (Ubuntu), including unattended upgrades.
• Secure coding practice: SAST scanning, dependency checks, SBOM maintenance, fixing penetration test findings.
• Clear written English for specs, API docs and user guides.
• Degree in Computer Science or similar or equivalent hands-on experience.
Area
What we expect
Hands-on use of at least one major API (Anthropic Claude, OpenAI, Google Gemini or Azure OpenAI): streaming, tool/function calling, structured JSON output, token and cost control
Chunking and embedding documents, vector search with pgvector, Qdrant or similar, citing sources in answers
Writing and versioning prompts, few-shot examples, system prompts that keep answers grounded
Test sets and automated checks for accuracy, hallucination and regressions before each release
Guarding against prompt injection from user content, keeping customer data separate, redacting sensitive data, human approval for actions an AI suggests
Running open models (Llama, Mistral, Qwen) through Ollama or vLLM; switching providers behind one interface
Building an MCP server with an official SDK (TypeScript, Python or Java): tools, resources and prompts; stdio and Streamable HTTP transports; OAuth-based auth; testing with MCP Inspector and real clients
Connecting to external MCP servers or using agent frameworks (LangChain, LangGraph, Spring AI, LlamaIndex) where useful
Logging every AI call with inputs, outputs, latency and cost; alerts on failures