When discussing a software engineer’s career, several key points naturally come
to mind. If you want to make progress, it doesn’t matter whether you focus on
management or on being an individual contributor; as a staff engineer, you need
to go beyond code. Finding a way to acquire those skills and gain field
experience can be a challenging task. Luckily for us software engineers, open
source provides a way to achieve this. This article explores ten reasons to get
involved in open source, highlighting how contributions to the Java standards
for enterprise applications, Jakarta EE, can help you grow professionally while
shaping the future of the software industry.
If you’ve never heard of Jakarta EE and you are a Java
developer, you are most likely already using it. In summary, Jakarta EE
(formerly Java Enterprise Edition, Java EE) comprises several specifications
designed to make a Java developer’s life easier, including dependency
injection, JAX-RS, and support for both relational and non-relational
databases.
Thus, contributing to Jakarta EE means contributing to a project that every
Java developer will eventually use, with a truly global impact. We often
associate open source with philosophy; however, open source also encompasses
some of the most advanced software engineering techniques, helping you advance
your career.
1. Shape the future of Enterprise Java
By contributing to technologies that shape the cloud native era, you stay
aligned with the future. As Peter Drucker, the father of modern management,
once said: “The best way to predict the future is to create it.” By
participating in Jakarta EE, you not only stay updated, you also help build
that future.
2. Enhance your coding discipline
Open source contributions are often made in one’s spare time, which forces
efficiency. Through reviews, clean architecture practices, and testing, you
learn to write disciplined code. These habits extend beyond coding, improving
time management, and even how you invest in your personal education.
3. Learn from the best
By contributing to Jakarta EE, you’ll collaborate with Java Champions,
architects, and experts from leading tech companies such as Fujitsu, IBM,
Oracle, Payara, Red Hat, and Tomitribe. You gain exposure to methodologies and
design approaches from recognised professionals, including book authors and
reference figures in software architecture and design.
4. Improve your writing skills
Software engineering is more than code; it requires clear communication,
writing specifications, documentation, and participating in discussions forces
you to be precise. Documentation is a long-term investment that ensures
scalability within organisations. In open source, you practice this on a global
stage. For non-native speakers, it also provides a chance to improve a second,
or even third language.
5. Enhance your public speaking
Whether you aim for management or staff engineering, communication is
non-negotiable. Open source provides opportunities to present what you are
learning at community calls, meetups, and conferences. Beyond the talks
themselves, you also learn to “sell” your ideas through calls for papers,
proposals, and pitching why your presentation should be accepted. You will
apply the selling skill to get a promotion or find a new job.
6. Expand your global network
Open source connects you with developers, architects, and companies around the
globe. Networking creates opportunities: a new job, a startup, or even a role
that finds you. Let’s say goodbye to the whiteboard. In tech, interviews often
involve “whiteboard” coding challenges where candidates must solve problems
live in front of interviewers, but strong open source contributions can
sometimes help you skip that step, as your work and coding are visible in your
contributions. I personally experienced this when contributing to a project,
which helped me land my first job in English.
7. Grow your personal brand
Your name appears in release notes, commits, and community channels. By
presenting, writing blogs, and sharing your knowledge, you build visibility.
Certifications are valuable, but far fewer people can claim to have shaped the
technology itself. For example, many use Jakarta Persistence or Hibernate, but
how many know the creator of Hibernate? Being part of Jakarta EE makes you
stand out globally.
8. Gain credibility and recognition
As you invest in contributions and personal branding, people start to associate
you with your work. This recognition translates into credibility. Over time,
contributions may even become part of your professional “surname”. Think of the
creator of Quarkus or the creator of Hibernate.
9. Develop leadership skills
Leadership in Jakarta EE requires aligning roadmaps, negotiating APIs, guiding
collaborative decisions, and going to conferences. Being a leader is not just
about technical expertise, it’s about communication, influence, and impact.
Open source provides a unique training ground for these skills, offering
real-world human interactions that cannot be easily simulated elsewhere.
10. Sharpen your hard skills
Finally, contributing sharpens your technical mastery. Jakarta EE fosters
collaboration and convergence on best-practice APIs. You gain a deep
understanding of architecture, design principles, documentation, testing,
refactoring, and layering. These are the same practices enterprises want to
implement internally, and Jakarta EE gives you direct experience with them.
Indeed, open source offers more than just ten advantages, blending soft and
hard skills to help you grow. For example, some conferences support speakers by
covering travel costs, and your chances of being selected increase when you’re
part of the Java ecosystem as a contributor. Open source can even open doors to
travel the world.
With all these benefits, how do you start contributing? Here are a few
practical steps:
- Visit the Jakarta EE page: https://jakarta.ee/
- Explore the specifications: https://jakarta.ee/specifications/ or
the Jakarta EE Projects: https://github.com/eclipse-ee4j
- Pick one or two specs (start small and commit time to just one).
- Introduce yourself in the specification mailing list or channel.
- Read the documentation and learn the history and context.
- Contribute by fixing or enhancing the documentation, creating some samples,
and updating it. (The documentation is, usually, the best approach to start
on open source projects; nobody will reject updating, making a sample, or
enhancing the documentation).
- Review mailing lists, issues, and pull requests. Look for items labeled
first contribution.
- Once familiar, suggest improvements or new features, but only after fully
understanding the project context.
- Keep contributing consistently. Small, regular steps matter more than
occasional big efforts.
Remember: your career is a marathon, not a 100-meter sprint.
One of the biggest mistakes I have observed in software engineers is believing
that the ability to write code is sufficient. In reality, we also need to
interact with people; therefore, an excellent software engineer must cultivate
both hard and soft skills.
Yes, open source can help you go “to infinity and beyond” in your career. It
strengthens your understanding of design, architecture, and coding practices
while enhancing your communication, writing, and leadership. Open source
changed my life in many ways, and I hope it impacts yours too.
💻 Ready to start contributing to Jakarta EE? Explore the
Contribute to Jakarta EE page to learn
precisely how to get started, the benefits of contributing, and where your
skills can make an impact.
🤝Start strong with the support of an experienced mentor. Explore our
Mentorship Program to be paired with someone
who can help you onboard smoothly and find your place in the community.
Otávio Santana