João Lourenço is a multidisciplinary professional who transitioned from a decade-long engineering career into an award-winning full-time photographer and creative entrepreneur based in Almada, Portugal. He founded and scaled a diversified visual business spanning wedding photography and documentary work, corporate photography and video production, event photo booths, and fine art printing. Prior to photography he spent years as a structural and civil engineer on international projects across the UK, Middle East, and Libya, bringing rigorous project management and technical precision to his creative practice. An active coder and contributor to the D programming language ecosystem, he has implemented and tested conditional compilation features in dmd and improved phobos and LDC test suites, blending low-level backend development with QA automation. João balances client work for major corporate names with a passion for travel, motorcycling, drawing and annual exploratory trips, and still enjoys running a hands-on studio despite growing into a multi-brand operation.
8 years of coding experience
7 years of employment as a software developer
Master, Civil Engineering, Major in Structures, Master, Civil Engineering, Major in Structures at Universidade de Coimbra
Health and Safety Senior Technician, Health and Safety Senior Technician at ISLA - Instituto Politécnico de Gestão e Tecnologia
The standard library of the D programming language
Role in this project:
Back-end Developer
Contributions:26 reviews, 10 commits, 10 PRs in 1 year 7 months
Contributions summary:João primarily contributed to the `phobos` standard library of the D programming language, focusing on algorithm and variant implementations. Their work involved fixing bugs in existing code, such as incorrect unit tests in std.variant and issues with comparisons to null. The user also added new unit tests to cover edge cases and added support for a `canMatch` template in `sumtype`.
Contributions:4 reviews, 8 commits, 4 PRs in 10 months
Contributions summary:João contributed to the D Programming Language compiler (dmd) by implementing conditional compilation features related to preconditions, postconditions, and invariants. They added and tested version conditions in the compiler's source code. The user's work involved modifying core compiler files and writing test cases to ensure the correct behavior of these conditional compilation features, particularly regarding the `D_PreConditions`, `D_PostConditions`, and `D_Invariants` version identifiers.
compilersnativedubdmdstandard-library
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial
João Lourenço - Photographer at Lourenço Wedding Photography