Daniele Ambrosino
Software Engineer

EmailGitHubLinkedIn

About

Foto profilo di Daniele Ambrosino.

I have always liked to understand how things work down to the smallest detail, and for this reason I began very early to disassemble computers and "fiddle" with Linux-based operating systems, developing the OS knowledge that I still use daily.
With the university I approached programming in a systematic way and, in parallel with the study, I began to explore the world of web application development, working as a freelancer.

Over time I realized that what I am really passionate about is the possibility of giving concreteness to ideas by designing systems in the simplest, most essential, elegant and solid way possible, both in the backend and in the frontend, taking care of every detail of development, from attention to performance and best practice to rigor in code cleanliness.
This web page is a good manifesto of the essentiality and attention to detail that I care so much ☺
Feel free to peek into the source code!

For some years, also thanks to the CyberChallenge.IT project, I discovered the world of cybersecurity and I started playing CTF competitions, an extremely stimulating activity not only for the possibility of proactively discovering the functioning and implementation details of many technologies, but also to exploit (and expand) the transversal knowledge of operating systems, networking and programming, encouraging an holistic approach.

Experience

Education

Skills

Backend

I am very familiar with the PHP language, which I have used to develop countless projects. The frameworks I've worked with most frequently are Symfony and Laravel.
I know the NodeJS ecosystem well, I have used Express for several projects and lately I have used the Deno runtime for some small software.
I also used Java mainly for API development, especially with the Spring framework.

The DBMS I've worked with the most are PostgreSQL and MySQL, but on more than one occasion I've also used SQLite for small projects and embedded systems.
I happened to use Redis as a persistence system for some real-time collaborative applications.

I know Telegram Bot APIs very well, having used them in different circumstances for the development of chatbots.

have had the opportunity to work extensively with Python not only in some projects related to AI, but especially recently thanks to THE CTF, an area in which Python is the de facto scripting language of choice; its conciseness makes it particularly suitable for systematically coding exploits, so knowing it fluently is an almost indispensable requirement.

Frontend

HTML, CSS and JavaScript cannot be missing in the knowledge of a web developer. I pay close attention to the semantics of HTML elements (also useful from an SEO perspective that is often overlooked), and I try to be as up-to-date as possible on new introductions in these languages.
I strongly maintain that there is far too much JavaScript on today's web, and that we developers need to be more aware of current web technologies to avoid misusing the tools at our disposal (there is not a single line of JavaScript on this page!).

For some highly interactive projects, I used the Svelte framework.