The last few years have seen thrilling changes in the software landscape and mushrooming opportunities for coders. Today software developers are critical not just for every enterprise looking to grow, but also for every government or nonprofit organization wrestling with the world’s problems. That means we’ll need software developers who are more creative and diverse than ever before. Here’s our guide to finding exciting collaborations, successful projects, and personal growth in 2018.
1. Join an open source project and level-up your skills.
If you’ve been waiting to contribute to open source, why not do it this year? The advantages: Honing your skills, learning new domains, adding to your portfolio, networking with greats, and enjoying the feeling of creating something beyond your regular gig—something that might even improve the world.
“There are a lot of areas where we need either more free software or more involvement in existing free software projects,” says Berlin-based computer scientist Lydia Pintscher, the product manager for Wikidata and president of KDE e.V., a nonprofit supporting free and open end-user software.
It’s easy to find a project to contribute to—look first to software that you or your company use. At Oracle, for example, developers are contributing to an open source development stack that includes the Fn serverless platform, the Kubernetes Terraform Installer, Oracle Linux, and the Java programming language.
Your coding ability isn’t the only thing that makes you valuable to open source efforts, Pintscher emphasizes—and there’s more to gain from joining a project than adding to your code portfolio. These projects can be an opportunity to invent solutions to environmental problems (get inspired at Public Lab), expand your creativity, or grow skills in new areas (think project management, marketing, community growth, user experience or 3D printing).
2. Collaborate with a creative.
As software development becomes central to every business effort, more and more emphasis will go toward humanizing software interfaces, which will require pulling in people educated in the liberal arts. For example, Slack, an instant messaging company, hired a theater major to write zany messages to user queries as part of what’s been hailed as renewed demand for people schooled in the arts.
Sure, you can piece together a working prototype yourself from disparate cloud services and DIY technologies, but why not collaborate with an experience expert or invite a data artist (a new job title that’s growing in importance) to create meaningful visualizations of information streaming from an API you provide?
3. Embed AI into your apps with chatbots.
According to IDC, 90% of consumers will interact with chatbots by 2025.
“I’m lucky to have lived through three digital disruptions: the internet, mobile, and now conversational UI,” says Suhas Uliyar, vice president for Oracle’s intelligent bot-building capability, which was unveiled in 2017 as part of Oracle Mobile Cloud. Because so many people prefer communicating via text, Uliyar says it’s up to you to learn how to communicate with your users via their preferred channel, not yours. Chatbots make that possible, using AI-powered conversations.
Chatbots are a great way to begin embedding AI into your apps, experimenting with what meaningful decisions your app can make on behalf of its users. They’re not only a tool your business partners will value today, they’re an onramp to building machine learning systems that use natural language conversations, image analytics, augmented reality, and enterprise data.
4. Learn to orchestrate on Kubernetes, the new cloud OS.
In 2017, it became clear that Kubernetes is the winning choice for orchestrating containers at scale. To get a sense of the magic that is Kubernetes, watch TJ Fontaine and get inspired about orchestrating clusters across hybrid clouds—because, let’s face it, becoming a sysadmin is not what you signed up for as a coder. Once you understand the power that is Kubernetes, you’ll also get why you want managed Kubernetes.
Kubernetes isn’t easy, but it’s going to be the operating system upon which you’re building your microservices. One of your challenges will be harnessing open-source innovation like Kubernetes for practical, at-scale production use at your organization, and a managed platform lets you get the value without having to learn a lot of its nuances. This year is a great time to learn to harness all the components that support:
Continuous integration and delivery pipelines such as Wercker.
A microservices platform like Hystrix.
Containers with Docker.
Container management and orchestration with the mighty, unwieldy Kubernetes.
Container registry and serverless capability with the exciting Fn platform.
Grok this, and you’ll be fending off headhunters in 2018.
5. Explore a new language for machine learning, data science, or blockchain.
Here’s a suggestion: Check out the free training available at Hyperledger.org, where you can explore the Hyperledger blockchain fabric and try your hand at writing a smart contract in the Go language.
6. Become a cloud architect.
Are you good at seeing the big picture? You might be able to fill the growing demand for cloud architects. Software developers are best positioned to make the leap to cloud architect, because you’re used to tying together services, logic, and data into a total solution using cloud-native programming platforms.
According to LinkedIn’s annual look at the most popular job market skills, cloud and distributed computing skills continue to be vital as enterprises move their workloads to the cloud. Certification is one way to validate your knowledge against industry benchmarks and demonstrate your ability to lead successful deployments. For example, there’s a new Oracle Cloud Infrastructure Architect certification that shows your deep understanding of cloud services and requires about six months of hands-on experience. The certification includes a digital badge for resumes and social media profiles.
Related: Register for an Oracle Code event near you
But don’t forget the softer skills required to become a cloud architect (more on that below): Having a vision of what is technically possible is only part of the job. You’ll need “whiteboard skills” to successfully sell your plan to executives, IT and developers.
7. Reduce the ops in DevOps.
DevOps is a fully mainstream cultural practice now, according to RightScale’s 2017 State of the Cloud Report, with overall adoption in enterprises reaching 84 percent last year. As the speed of software deployment increases, however, tactics such as automated container management and continuous integration only become more important and more challenging — and it’s only the beginning.
According to Patrick Debois, serverless development processes supplant the face-to-face interactions that DevOps celebrates. Ultimately, DevOps is best run on autopilot. If you’re spending too much time optimizing cloud deployment, now is the time to reevaluate that practice. Instead, try delegating to dedicated DevOps engineers in your organization, and working with a cloud provider that uses AI to maintain your apps in the cloud. Then, rededicate yourself to the empathy that DevOps culture celebrates and find ways to increase valuable human communication on your team.
8. Embrace mindful leadership, not mindless technology roles.
What’s the hardest part of software development? The answer is (and always will be) people. “It’s the human touch that we’re looking for,” Debois says.
Seeking out leadership roles in the tech industry can help grow your soft skills, which will be increasingly in demand, says Rashim Mogha, senior director of product management for Oracle Cloud Infrastructure. “One reason is that, because of AI, some ‘mindless’ technology roles are going to be automated. That means emotional intelligence and mindful leadership will play a bigger role,” she says.
Another important trend in 2018 will be inclusiveness, which has been shown to result in broader solutions, greater innovation, and better decision-making. “One part of inclusiveness is diversity, and we have gotten better at that. But the bigger part is inclusion. Yes, you have 10 women on your leadership committee, but do you include them in your decision-making process?” asks Mogha.
9. Write once, run anywhere: Dive deep into Java.
There’s never been a better time to grow your Java skills. The “Write Once, Run Anywhere” promise that launched the language still holds true. Java is the number one developer choice for the cloud, according to Oracle research, with 21 billion Java Virtual Machines running cloud-connected code. Java 9 came out in September, and faster Java SE releases are juicing up the community, where you can find inspiring innovations such as reactive architectures and microservices with the Spring stack.
This year, Oracle donated Java Enterprise Edition to the Eclipse Foundation, which bodes well for an ongoing community effort to add asynchronous features to EE4J in 2018. Beyond Java, the JVM is the engine powering all sorts of specialty languages such as Scala, Clojure, JRuby, Kotlin, and Apache Groovy.
Above all, Java remains a solid choice for maturing companies, capable of handling traditional and new styles of programming. That means that as enterprises look to migrate more workloads to the cloud, Java is a great foundation for serverless skills. Try the Java Function Developer Kit for Fn (or check out the FDKs for Go and Python).
10. Become a hero: Know your superpower.
In 2018, make your career your top priority using four steps suggested by Mogha. First, know your superpower — the special abilities that you bring to a project or position. Second, don’t just find a mentor, she says, find a sponsor who can promote you. Third, “Know that you have a seat at the table for a reason. Don’t be afraid to speak out,” Mogha says. Finally, give back to the community, be it by mentoring others, volunteering, or speaking at conferences such as Oracle Code.
You have the tools to become a software hero. Go ahead and code your future.
Alexa Weber Morales is a content strategist and editor for Oracle.