Getting a Coding Job For Dummies. Nikhil Abraham

Читать онлайн.
Название Getting a Coding Job For Dummies
Автор произведения Nikhil Abraham
Жанр Зарубежная образовательная литература
Серия For Dummies
Издательство Зарубежная образовательная литература
Год выпуска 0
isbn 9781119121022



Скачать книгу

who work in human resources might be expected to do the following:

      ✔ Source and screen candidates for open company jobs

      ✔ Manage payroll, benefits, performance, and training for employees

      ✔ Ensure company compliance with relevant laws, and resolve disputes

      Traditionally, HR professionals have not performed much coding in the workplace. The human- and process-driven components of the job generally outweighed the need for automation that coding typically provides. For example, a dispute between coworkers is usually resolved with an in-person meeting organized by HR, not by a computer program. However, the recruiting function in HR may benefit from coding. Hiring employees has always been challenging, especially for technical positions where the demand for employees far exceeds the supply of available and qualified candidates.

      If you are responsible for technical recruiting and want to increase the number of candidates you reach out to and source, one solution is to learn some coding to discover people who may not meet the traditional hiring criteria. For example, a company might ordinarily look for developers from a specific university with at least a 3.0 grade point average.

      However, increasingly developers are self-taught and may have dropped out or not attended university at all. A technical recruiter who can evaluate code that self-taught developers have written and made publicly available on sites such as Github or Bitbucket can qualify candidates who previously would have been rejected. Additionally, recruiters working with technical candidates improve outcomes by being able to speak their language.

      Companies such as Google and Facebook have taken a technical approach to managing the expensive and difficult problem of finding and retaining employees. These companies perform people analytics on their employees by looking at everyone that applies and analyzing factors that contribute to hiring, promotion, and departure, such as undergraduate GPA, previous employer, interview performance, and on-the-job reviews. At Google, this analysis requires some serious coding because more than two million people apply each year.

Product management

      Product managers, especially those working on software and hardware products, perform tasks like the following:

      ✔ Manage processes and people to launch products on time and on budget, maintain existing products, and retire old products

      ✔ Connect all departments that create a product, including sales, engineering, marketing, design, operations, and quality control

      ✔ Guide the product definition, roadmap, and business model based on understanding the target market and customers

      The product manager’s role can vary greatly because it is a function of the company culture and the product being built. This is especially true for technical products; in some companies, product managers define the problem and engineers design hardware and software to solve those problems. In other companies, product managers not only define the problem but also help design the technical solution.

      One of the hardest challenges and main responsibilities of a product manager is to deliver a product on time and within budget. Timelines can be difficult to estimate, especially when new technology is used or existing technology is used in a new way. When you manufacture, say, a chair, it has a set product definition. For a product with a technical component, additional features can creep into the project late in development, or a single feature might be responsible for the majority of time or cost overruns. The product manager helps to keep these variables in check.

      The product manager working on a technical product who has some coding skill will be able to better estimate development cycles and anticipate the moving pieces that must come together. In addition, solving technical challenges that arise and understanding the tradeoffs of one solution versus another are easier with some coding background.

      

Business analysts or integration specialists translate business requirements from customers into technical requirements that are delivered to project managers and that are eventually implemented by back-end engineers.

Sales and marketing

      Sales and marketing professionals perform tasks like

      ✔ Segment existing customers and identify new potential customers

      ✔ Generate and convert prospective leads into sold customers

      ✔ Craft product and brand images to reflect company and customer values

      Salespeople and marketers expend a great deal of effort placing the right message at the right time to the right customer. For decades, these messages were delivered in newspapers, in magazines, on television, and in radio. Measuring their effect in these channels was difficult, part art and part science. With the movement of messages to the Internet, we can now measure and analyze every customer view and click. Online marketing has created another problem: Online customers generate so much data that much of it goes unanalyzed.

      The salesperson or marketer who can code is able to better target customers online. If you’re a salesperson, generating leads is the start of the sales funnel, and coding enables you to find and prioritize online website visitors as potential customers. For example, when Uber launched their mobile application, it was available only in San Francisco. The company tracked and analyzed the location of users who opened the app to decide which city to launch in next.

      If you are in marketing, identifying who to market to is as important as identifying what message to market. Website visitors reveal behavioral and demographic data about themselves, including location, web pages visited, visit duration, and often gender, age, employer, and past online purchases. Even moderately successful websites generate tens of millions of records a month, and coding can help spot trends such as the 25-to-29-year-old females in Nebraska who are suddenly interested in but are not purchasing your product. Marketing messages become more efficient when you know the segments you are targeting and how they are responding.

Legal

      Professionals providing legal services might perform the following tasks:

      ✔ Identify and manage legal risks in agreements and transactions

      ✔ Ensure ongoing compliance with relevant laws and regulations

      ✔ Review documents such as prior cases, business records, and legal filings

      ✔ Resolve disputes through litigation, mediation, and arbitration

      Historically, the legal profession has been resilient to advances in technology. I include it here because if lawyers who code are able to more efficiently perform their jobs, professionals in any other industry should be able to benefit from coding as well.

      Coding knowledge may not assist a lawyer with delivering a passionate argument in court or finalizing a transaction between two Fortune 500 companies, but the bulk of a lawyer’s time is spent on document review, a task that could benefit from coding knowledge.

      When reviewing legal documents, a lawyer might read previous cases in a litigation, check existing patent filings before filing a new patent, or examine a company’s contracts in preparation for a merger. All these tasks involve processing large amounts of text, and current legal tools enable, for example, wildcard searching (such as using new* to find New York, New Jersey, and New Hampshire).

However, the use of regular expressions – code that searches for patterns in text – could help lawyers review documents faster and more efficiently. See Figure 2-2.

       Figure 2-2: Use RegExr.com to practice searching with regular expressions.

      For example, suppose you are a government lawyer investigating an investment bank for fraudulently selling low-quality mortgages. The investment bank has produced two million documents, and you want to find every email address mentioned in these documents. You could spend months reviewing every page and noting the email addresses, or you could spend a few minutes writing a regular