Ethan
Coward

Computer Science student at the University of Bath. Currently interested in AI/ML, mathematical foundations, web development, and agentic AI tooling and workflows.

About

20-year-old Computer Science student at the University of Bath, UK. I enjoy building tools that solve real problems — from Discord bots to data pipelines to web apps. Winner of the "Best Use of AI" track at Bath Hack 2025.

Contact

Got ideas? Let's talk.

hello@ethancoward.dev

Experience

Technical Student — CERN

Starting Jul 2026

12-month placement in the Experimental Physics Department under the CMS experiment, working in the Trigger and Data Acquisition team.

Data Engineer — Hive HR

Jun 2022 – Present

Led Python development across multiple reporting tools. Established monorepo architecture for internal tooling. Built reporting systems that replaced inefficient BI software. Collaborated on integrating bespoke reporting tools into the customer-facing platform for self-service access.

Developer — VC Roles

Apr 2021 – Present

Discord bot with voice channel-role linking, TTS tools, logging, and a web dashboard. 19,500+ servers, 18+ million combined members, 397 million roles changed, 1+ million commands used.

Education

BSc Computer Science with Professional Placement

2024 – Present

University of Bath — First year average: 88%. Top 10 student in CS cohort; awarded the Netcraft Prize.

Current units

Software Engineering · Algorithms & Complexity · Machine Learning · Visual Computing · Human-Computer Interaction · Advanced Programming · Cybersecurity

A-Levels & GCSEs

2019 – 2024

The King Edward VI School, Morpeth. A*A*A*A* in CompSci, Maths, Further Maths, Physics. 9x Grade 9, 2x Grade 8 at GCSE.

Running & Orienteering

I ran the Bath Half Marathon in 2025 and the Great North Run in 2025. I am an active member of the University of Bath Mountaineering Club (BUMC), where I take part in hiking, trail running, bouldering, and mostly orienteering. I also volunteer as a club driver on trips.

Skills

I spend most of my time in Python, where I have deep experience with type annotations, data processing libraries (NumPy, SciPy, Pandas), and building internal tooling at scale. I care a lot about developer experience — I use modern Python tooling daily including uv, ruff, and mypy. I follow the development of the ty type checker closely and keep up with the broader Python type-checking ecosystem.

On the web, my comfort zone is TypeScript with React and Next.js. I have built production user interfaces with Tailwind CSS and worked across the full stack using tRPC, Prisma ORM, Drizzle ORM, PostgreSQL, and Redis. I've deployed in many different ways including Vercel, Cloudflare, Docker and self-hosted VPS (sometimes with Coolify), and I am familiar with AWS Lambda concepts.

I have been integrating AI into platforms for a while now — both through direct API use and by building agentic workflows that chain models and tools together. I'm familiar with the Claude, OpenAI, Gemini, and many other model families, and I've tried them all out across many providers (thanks OpenRouter!). I like thinking about how to get the best results out of these models, and I know when abstractions like MCP are useful (and why for most use cases it is not). I have tried and tested various agentic coding tools, such as Claude Code, OpenCode, and recently Pi.

I have a solid academic foundation in AI/ML through my degree, working with libraries like PyTorch on coursework covering neural networks, computer vision, and NLP. I have also built group software engineering projects in year 1 (10 people) and year 2 (8 people), which gave me real experience in code review, testing, and working in a team toward deadlines.

Beyond the tools, I am comfortable with Git, Docker, and Linux environments, having used them extensively. But I've also had some exposure to Rust, Java, Haskell, C, and many more through university and personal interest, though I would not call myself fluent in any of them yet.

Projects

View All →