In today’s technologically-driven information age, it’s never been more important for companies to hire security experts to keep their sensitive information safe. These areas are critical for any programmer who wants to work at large scale web development companies. Here at HackerRank, we’re constantly striving to offer new ways to help you improve your programming skills. So, today we’re releasing the first set of challenges for two brand new domains: Security Domain and Distributed Systems Domains.
You’ll see a set of interesting new problems to start with today, but our challenge curation team is diligently adding more challenges in the next few weeks. By diving into the Security and Distributed Systems domains, you’ll be able to practice and study secure communication that involves a combination of mathematics, computer science and electrical engineering disciplines.
What You’ll Find in the Security Domain
When you have massive quantities of sensitive, valuable information spread out across different systems, security is a high priority for any company. And we’re seeing a natural rise in technology disrupting industries with highly sensitive data, like government, financial and healthcare. As a result, there’s been a massive spike in demand for security professionals over the past decade. One 2013 study, for instance, found the number of job postings for IT security positions went up 73% between 2007 and 2012.
Since security is a red hot issue right now for all employers, they’re looking for programmers who know which types of attacks to look for and can manipulate code to ensure that their database and system are secured. In the Security Domain, you’ll be able to practice SQL injection, script injection and cross site scripting to help you get better at preventing and fending off attacks in data-driven applications.
What You’ll Find in the Distributed Systems Domain
Since most real-world computing tasks are carried out across a network of computers, it’s crucial for programmers to hone their skills in distributed systems as well. Distributed systems comes with a host of technical challenges that any good programmer should be able to tackle. For instance, do you know the complexities involved in concurrent programming and database access while networking between different computers? Likewise, do you know how to write code in a way that enables processing over a set of nodes, like hadoop cluster running mappers and reducers?
What are you waiting for?