Ehsan UH.
Profile picture
Ehsan Ul Haque
Ph.D. Candidate | Former Software Engineer
ehsan.ul_haque@uconn.edu
Storrs, CT

Hello, my name is Ehsan. My journey into technology wasn't exactly planned; it started with a love for gaming. When I began my undergraduate studies in computer science, I didn't know much about programming. But I did know that computers held tremendous power, and I was curious to understand it.

In my first year, I started learning C. It was a rewarding experience, yet I barely scratched the surface of what programming could do. My real “aha” moment came in my second year with Java, where I developed a GUI-based 15 puzzle game as a project. It was my first substantial creation—something I built from scratch—and it opened my eyes to the world of possibilities. I began to understand that programming was more than just lines of code; it was a tool to bring ideas to life. The initial steep learning curves didn't deter me; they motivated me. My confidence grew with each project, and I started betting on myself to conquer even the most challenging tasks.

After graduating, I received my first job offer as a software engineer, where I quickly learned that real-world coding goes beyond writing functional code. In a company, code needs to be clean, maintainable, and scalable. I learned to implement design patterns and to write code that others could easily follow and extend. Diving into large codebases, understanding them, and making modifications was challenging but invaluable. One memorable project was creating an offline mode for a website using shell scripts. I also became familiar with agile methodologies, sprint-based workflows, and version control—practical skills that transformed me into a disciplined, well-rounded engineer.

A year and a half in, I was promoted to Senior Software Engineer. This role came with new challenges and opportunities to apply the structural and architectural principles I'd been learning. I focused heavily on backend development, optimizing API services, and writing database queries for data-intensive applications. I became passionate about creating loosely coupled, reusable components and crafting modular designs that could adapt and expand as needed. But the role also introduced me to mentorship, where I guided new recruits, sharing best practices and technical insights I had picked up along the way. Helping them succeed was immensely rewarding, and it solidified my own understanding as well.

After three and a half years in the industry, I decided it was time to push myself further, which led me to pursue a PhD. I was driven by a hunger for deeper knowledge and a desire to contribute meaningfully to the field of usable security. I wanted to understand not only the technical aspects of security but also how users perceive and interact with it. As an HCI researcher, I conducted user studies to uncover behavioral insights on security and privacy. Designing studies free from bias, controlling for confounding factors, and analyzing data quantitatively and qualitatively allowed me to derive meaningful conclusions about user interactions. Translating these findings into scientific papers was challenging, yet it deepened my respect for research as a tool for real-world impact.

Today, as I near the end of my PhD journey, I'm excited about where this curiosity will take me next. Each step in my career, from programming as a novice to researching complex user behaviors, has been about learning, challenging myself, and expanding my capabilities. I'm driven by a genuine love for learning and building, and I can't wait to see what challenges lie ahead.