Visit our Location
Lagos | Abuja | London
Send us a Message
cis@clovo-works.com
Opening Hours
Mon - Saturday: 8AM - 5PM

Who Owns The Code ?

Author:  Chris Shiplett
Attorney, Erik M. Pelton & Associates

Re-usable code is a key component of any developer’s toolkit, and creating and owning re-usable code is a critical step in the process of creating a profitable software development business. Whether the code consists of web-site management scripts, “black box” modules or self-contained classes contributed to larger projects, re-usable code is the centerpiece of modern object-oriented and rapid-prototyping design principals. To fully leverage the power of re-usable code, however, you must understand the legal framework that defines who owns that code.

I assume for the purposes of this article that the code at issue is copyrightable. Some of the most basic code fragments, for example, a simple “for” loop to iterate through an array of objects and perform some action on each object, may not be copyrightable at all. Most larger code segments, however, are copyrightable.

Copyright Law Creates A Framework For Software Ownership

Ownership of the copyright in software code is important because the copyright owner controls the ability to copy, distribute, sell, or modify the code, and generally controls the ability to profit from the code. Under copyright law, the author of a line of software code is the owner of the copyright in that code. That is, the person who physically puts fingers to the keyboard and types out the sequence of words and symbols that constitutes a line of software code is the “author” and owns the copyright to the code. A copy-right is created by federal law and consists of six rights the owner of a “work” has to the exclusion of any other person or business. Four of these rights are applicable to software code. Those are:

The right to reproduce the code
The right to create “derivative works” based on the code, such as the screen display that the code generates, future versions of the software, or other software programs into which the code is integrated
The right to distribute copies of the code
The right to “display” the code, for example by posting to a web site. (17 U.S.C. § 106)
Applying the basic law of copyright to software development, if you personally write a class or a module, you own the copyright to that class or module. If you write a website in HTML, or a website display script in a scripting language like PHP or ASP.NET, you own the copyright to those lines of code you wrote. You are free to re-use that code in any way you like, and no other person or entity can legally use that code without your permission.

The basic rule is subject to several exceptions. In the software world, there are three exceptions so common they swallow the rule. A more nuanced and practical understanding of the role of copyright in re-usable code requires as much understanding of the exceptions as the basic rules. The three exceptions to the basic rule of copyright ownership most prevalent in the context of software development are the “work-made-for-hire” rule, the “License or Assignment” clause in a development contract, and the unique situation encountered when developing on an “Open Source” platform.

The “work-made-for-hire” doctrine generally defines the relationship between a software developer and his or her client.

A segment of software code is a “work-made-for-hire” if it is either:

a) A work prepared by an employee in the scope of his or her employment; or

b) a work specially ordered or commissioned for use as [1] a contribution to a collective work, [2] as a part of a motion picture or [3] other audiovisual work, [4] as a translation, [5] as a supplementary work, [6] as a compilation, [7] as an instructional text, [8] as a test, [9] as answer material for a test, or [10] as an atlas, if the parties expressly agree in a written instrument signed by them that the work shall be considered a work made for hire. (17 U.S.C. § 101)

In either situation, the author of the code does not own the copyright in the code, as would be expected under the basic copyright framework. Rather, the person or business that employs the author or that commissioned the software owns the copyright in the code.
When a developer creates software as an employee, determining ownership of that software under the “work-made-for-hire” rule is relatively straightforward. Any work a developer creates within the scope of his or her employment is owned by the employer. Analysis of whether work is “within the scope of employment” can be extremely complex. However, at its most basic, if a developer writes a particular piece of software for work, his or her employer owns the copyright to that software.

When a developer creates a software as a contractor, analyzing who owns the copyright in code created as a result of that relationship becomes both more complex and more important. Courts and legal analysts use a three-part test to determine whether the developer or the client owns a particular segment or module of code. First, the work must have been specially ordered or commissioned. Second, the work must specifically fall within one of the ten categories enumerated in part (b) of the “work-made-for-hire” rule. If the work at issue does not fall within one of the enumerated categories, it cannot ever be a “work-made-for-hire.” Almost all software code is consumer-facing code and will fall under category three, audio-visual work, although some software without a human-readable interface may not fall under any of the ten enumerated categories. Third, and most significant, a commissioned and copyrightable work will only be considered “work-made-for-hire” owned by the client if the parties have a written agreement signed by the developer that explicitly states that the work is “work-made-for-hire.”

If a particular piece of software is a “work-made-for-hire,” the employer or client that commissioned the code owns the copyright in it. In order for the developer to have any right to use the software later or in different projects, the developer must negotiate a license to the software in the same way any third-party would.

Outside of “work-made-for-hire,” almost every development engagement includes some arrangement for the ownership, assignment, or licensing of the software.

The original author or any other owner can also transfer or share copyright rights to or with others through an assignment of the copyright or a license of the copyright. These two concepts should not be confused. An assignment is a grant of all of the rights of the author in the copyright to another party. If the developer assigns his rights to code he or she has written, the developer no longer has any right to the code and must license the code from the new owner to have the right to re-use it. Additionally, for an assignment to be binding, it must be made in writing and must be signed by the developer. Any alleged verbal assignment of copyright rights will be considered a license of those rights and not an assignment.

A license, in contrast, is a grant of permission to use the code without giving up ownership of the code. If assigning copyright in software is like selling your house, licensing copyrighted software is like renting your house. A license can range from a mere right to use the software, module, script, or class in the completed software, to granting rights to re-write the software or create derivative software from it, all the way up to all of the rights to the code that the original creator has. A license can be exclusive in the sense that the author agrees not to license the code to anyone else in a particular geographic region, industry, for a period of time, or at all, or it can be non-exclusive in the sense that the licensee is only one of several concurrent licensees, each with the same or overlapping rights. Importantly, the terms of licenses are interpreted according to the contract rules of your local jurisdiction. Therefore it is extremely important that the parties understand exactly what they are agreeing to before coming to an agreement.

Licenses and assignments are the two building blocks of software development agreements and should be a part of every software development contract. If the software is not a work-made-for-hire or the software copyright is not either expressly assigned to the client or licensed to the client at the end of the development project, then the client will infringe the developer’s copyrights in the code every time the client uses that code. Therefore, every well-written software development contract will contain a clause designating the code a work-made-for-hire, assigning the code to the client on completion, or granting the client a license to use the code on completion.

Putting it Together, A Sample Contract Clause

It is not uncommon for contracts to have a clause or series of clauses addressing all three of the above ideas, work-made-for-hire, license, and assignment. Below is an example of a typical section addressing copyright partitioning:

The copyright in all works of authorship created pursuant to this agreement is owned by Client. All such works or portions of works created by Developers are “works made for hire” as defined in 17 U.S.C. § 201. Developer assigns to Clients all right, title, and interest in:

(a) The copyright to all works of authorship (“Work”) and contribution to any such Work (“Contribution”) created pursuant to this agreement;

(b) Any registrations and copyright applications, along with any renewals and extensions thereof, relating to the Contribution or the Work;
(c) All works based upon, derived from, or incorporating the Contribution or the Work;

(d) All income, royalties, damages, claims, and payments now or hereafter due or payable with respect to the Contribution or the Work;

(e) All causes of action, either in law or in equity, for past, present, or future infringement of copyright-related to the Contribution or the Work, and all rights corresponding to any of the foregoing, throughout the world.

The developer may use the Work only until Developer delivers a final product to Client, and may use the Work only insomuch as such use is necessary to the creation of the final product. The client grants no license to the developer for any use of the Work other than as expressly described herein. The developer must request a separate license from Clients for any use of the Work other than as expressly described herein. Such license must be explicitly granted in writing, signed by Client, or it is void. Should a court of law with jurisdiction over the parties and the subject matter of this contract deem the Work not a “work for hire,” and should a court of law with jurisdiction over the parties and the subject matter judge the above assignment of copyright void, Developer grants Client an exclusive, royalty-free, irrevocable worldwide license to use the Work without limitation in any manner Client deems appropriate.

This clause attempts to cover each of the bases for the client to control the work, first by asserting that the work is a work-made-for-hire, then, by assigning the work to the client, and licensing back only the rights to the code necessary for the Developer to work on the project at issue, and finally, by granting the client an unlimited license for use of the work, in the event a court deems the code neither a work-made-for-hire, nor lawfully assigned. This particular example gives all of the rights to the code to the client. Of course, each of the component parts of this clause can and should be negotiated beforehand. Under a contract containing the clause above, the developer would not be allowed to re-use the code developed for the project. In negotiations, the savvy developer must understand each of the components to the above clause, and understand the ownership interest in the code each clause represents.

Open-source software platforms complicate the ownership of code

Open-source software is ubiquitous today, and it is impossible to develop software without encountering some form of open-source code, either as a platform on which to develop your software or as a component of your software. The key to understanding the implications of open-source software on development is the understanding that open-source software, while free, is not in the “public domain.” Open-source software is copyrighted software, the proper use of which is mandated according to the particular terms of the license. Importantly for developers, derivative software that is based on open-source software must generally conform to the terms of the original open source license, while software written to perform on an open-source platform need not. For example, if you write a flavor of Linux for use with a particular hardware suite, you must grant access to your source code in the same way you have been granted access to the Linux source code. Conversely, if you write a program to run on the Linux operating system, you need not conform to the GPL 2 open source license under which Linux is released, because in that case, Linux, while necessary for your software to function, is not a component of your software. In copyright terminology, your software is not a “derivative work” of Linux.

On the distribution side, if you choose to release your software under an open-source license, be aware that there are different flavors of open-source licenses. (See, for example, the Wikipedia entry on “Open Source Licenses” describing, comparing and contrasting many of the licenses.

Each flavor allows users of the software to do slightly different things, places slightly different restrictions on the user’s use of your software, and grants slightly different remedies in the event a user breaches the open-source agreement.

What It All Means

There are a number of things you can do while negotiating a development agreement to ensure that you can fully leverage the power of re-usable code and that your interests in the code you write are protected. The following are a sample of the most important things you should consider before you write a single line of code:

Get an agreement in writing on ownership of the code before you write a line of code: In almost every aspect, copyright law defers to the agreement between the parties. Before you start writing code for a project, make sure that both you and the client completely understand each other’s expectations for who will own the copyright in the code and what rights the respective parties will have to use the code when the project is over.

Clearly define what pre-built code you are bringing to the engagement versus what code you are writing to the specifications of the client: Often projects are a mix of pre-created code and custom-written code. Make sure that the agreement spells out what components you created prior to the engagement, and what components you will write specifically for this project. While you will own the copyright to anything you wrote before beginning the engagement, you do not want the question of ownership of your entire software toolkit left open if there is an eventual conflict. Spell it out beforehand.

If possible, retain ownership of the code and license it to the client: Your code is valuable. It may be that the client only wants the security of knowing you will not revoke their right to use the code and walk away from a half-completed website, or they may be concerned about you re-selling an idea they feel they have an ownership interest into a direct competitor. All of this should be part of your negotiation. If you can satisfy your client’s desire for security and assurances of a well-built, sophisticated web site, script, class, or module, without assigning the code to them, try to keep ownership of the code and license it to the client, rather than assigning it to them, or having them own the copyright outright under the work-made-for-hire doctrine.

Use ownership of the code as a negotiating point: A developer generally owns the code he or she creates. If the client insists on ownership, or an exclusive license to that code, use that to negotiate. You can ask that the client pay a premium for exclusive rights to the code, or ownership of the code. You can ask for a license back to create derivative software based on the code, and grant the client ownership of the code, again for a premium rate. Whatever you and your client decide, however, make sure that both sides are clear on the terms of the agreement, on what the words, such as “ownership,” “license,” “author,” or “work-made-for-hire,” actually mean, and, of course, abide by the agreement once it’s completed.

Be aware of open source restrictions: “Open-source” does not mean free for everyone to use in any way they like. Open source contracts are binding and will be enforced. If you write code on an open-source platform, read the license and abide by its terms. Make the client aware of any restrictions on their use of your code that may flow from the use of an open-source platform.

Write it all down and sign it: Each of the key components of the copyright law requires a written agreement, signed by the parties. Without a written agreement, and without the parties’ signature, copyright law defaults to the basic rule described above. While it may seem advantageous as a developer to leave an agreement unsigned, because the default rule typically grants ownership to that developer, remember that your work for a client and their satisfaction is based on your performance against their expectations. If the client expects sole ownership of a code segment, and you have agreed to it, don’t use the signatory requirements of copyright law as leverage after the fact to change the agreement.

When in doubt, consult a lawyer: Lawyers in this situation act as insurance. Like buying insurance, hiring a lawyer to review your contract can seem like an unnecessary up-front expense. However, the up-front cost of consulting with a lawyer before you negotiate an agreement can save a huge amount of frustration, wasted effort, and money in the long term by ensuring that any agreement you sign reflects your understanding of the agreement you negotiated and that both parties understand the terms that they have agreed to. The price of not having a properly negotiated and signed agreement could mean losing all copyright rights and control of the code.

About the Author: Chris Shiplett is an associate with Erik M. Pelton & Associates, PLLC, and specializes in software development contracts, trademark and copyright, and domain name disputes. He can be reached at chris.shiplett@tm4smallbiz.com.

Expert Services Consultant (Remote)

Benefits
1. Comprehensive benefits package including medical, dental, and vision plans for you, your spouse and family, cell phone allowance and more
2. Generous parental leave
3. Monthly company wide hack days
4. Paid employee Volunteer Time – 20 hours per year

Full Job Description
At CLOVO-WORKS, we believe that people do their best in a culture that fosters inclusion, innovation, and success. Our values – Champion the Customer, Take the Lead, Run Together, Ack + Own and Bring Yourself – serve as the foundation of our collaborative and dynamic culture. Whether it’s conducting a retrospective, participating in our monthly Hackdays, cranking out a new product feature, supporting our two CLOVO-WORKS bands, or doing our day to day work, Dutonians live and breathe these five values every day. Together, we solve real customer issues and fulfill our mission of connecting teams to real-time opportunities and elevate work to the outcomes that matter.

The CLOVO-WORKS Expert Services team is focused on enabling our customers to most effectively leverage our platform to achieve their business goals. We partner with our key customers to provide large scale onboarding; custom integrations, service modeling, and provision users, teams, services, schedules, and escalation policies.

As the company introduces a new approach to services delivery in a rapidly growing startup, this role will be instrumental in developing the process and technologies to deliver amazing customer experiences. You will help establish methodologies and repeatable processes to deliver successful implementations, every time.

About You
You’ve got technical chops. You are a technologist first. You demonstrate a deep knowledge of IT monitoring tools or within DevOps, SRE or IT Operations. You run the implementation process from design to delivery. You partner with customers to help design and build integrations to provide awesome implementations..

You are a problem solver. You identify potential roadblocks and provide thoughtful solutions. You are excellent at multi-tasking, are self-driven, and can work both independently and with a cross-functional team. You come up to speed quickly, love to learn, have a strong working style and impeccable attention to detail. You are comfortable running multiple simultaneous customer engagements and able to manage multiple threads within those engagements

You are an excellent and compelling communicator. You can break down complex technical concepts and explain them clearly to partners from business and technical backgrounds, from a DevOps engineer up to a C Level Executive. You have experience implementing technology solutions in the SaaS world and can articulate the solution to all levels in the customer organization

You are an extraordinary partner – to sales, to product, to your team, to your customers. Depending on the situation, you play the part of project manager, architect, consultant, technical guru, product expert, leader, evangelist, and teacher, with a relentless commitment to outstanding customer service

Ideal Qualifications
1. 5+ years of hands-on technical background with a primary emphasis on IT Operations / Professional Services delivery
2. Demonstrated Python and Javascript experience, especially within an AWS Lambda and stand-alone automation, scripting and tooling context
3. Demonstrated knowledge and ability to interact with common SaaS and traditional software APIs (REST, SOAP, WS), webhooks, etc. as part of scripting and tooling development, integration development, and ETL like activities.
4. Knowledge of infrastructure as code and DevOps SRE toolchains (GitHub, Terraform, Chef, Artifactory, JFrog, Nomad, Consul, Vault)
5. Ability to do advanced scripting (Python, Javascript, Go, Ruby, Perl) and fundamental knowledge of Linux.
6. Experience with node.js, css, flexbox & bootstrap
7. Hands-on technical background using AWS (EC2, Lambda, S3, RDS, API Gateway, DynamoDB, IAM)
8. Deep technical knowledge with ITSM tools like ServiceNow, Jira, Remedy (ServiceNow Admin, ServiceNow Scripting, ServiceNow GScript/Rhino, Studio)
9. Understanding of monitoring systems (DataDog, Dynatrace, Nagios, New Relic, Splunk, Zabbix)
You know and understand our space (or you’re already a fan of our product!).
10. Be prepared to give us a demo and show us what you’ve got!
Please note: this position may be either remote or based in our Nigeria offices. The role will involve 25-50% travel

CLOVO-WORKS offers:
1. Competitive salaries and company equity
2. Comprehensive benefits package including medical, dental, and vision plans for you, your spouse and family, cell phone allowance and more
3. Generous parental leave
4. Monthly company wide hack days
5. Paid employee Volunteer Time – 20 hours per year

CLOVO-WORKS is committed to creating a diverse environment and is an equal opportunity employer. CLOVO-WORKS does not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, parental status, veteran status, or disability status.

CLOVO-WORKS is committed to providing reasonable accommodations for qualified individuals with disabilities in our job application process. Should you require accommodation, please email accommodation@pagerduty.com and we will work with you to meet your accessibility needs.

Our stewardship of the data of many thousands of customers means that a background check is required to join CLOVO-WORKS. We will, nonetheless, consider for employment qualified applicants with arrest and conviction records in a manner consistent with local requirements.

CLOVO-WORKS uses the E-Verify employment verification program.

To all recruitment agencies: CLOVO-WORKS does not accept agency resumes. Please do not forward resumes to our jobs alias, CLOVO-WORKS employees or any other company location. CLOVO-WORKS is not responsible for any fees related to unsolicited resumes.

Job Opening – Field Sales Representative

Field Sales Representative Responsibilities
Include:

“Getting the sale” using various customer sales methods
Forecasting sales, developing “out of the box” sales strategies/models and evaluating their effectiveness
Evaluating customers skills, needs and building productive long lasting relationships
Job brief
We are looking for a competitive field sales representative to develop sales strategies and attract new clients. The successful salesperson will source new sales opportunities and close sales to achieve quotas. The successful candidate will play a key role in increasing income and revenue by managing and negotiating with clients, generating leads, qualifying prospects and managing sales of products and services. As an outside sales representative, or sales agent, they will also research sales competition.

Responsibilities
“Get the sale” using various customer sales methods (door-to-door, cold calling, presentations etc)
Forecast sales, develop “out of the box” sales strategies/models and evaluate their effectiveness
Evaluate customers skills, needs and build productive long lasting relationships
Meet personal and team sales targets
Research accounts and generate or follow through sales leads
Attend meeting, sales events and trainings to keep abreast of the latest developments
Report and provide feedback to management using financial statistical data
Maintain and expand client database within your assigned territory
Requirements
Proven sales experience
Track record of over-achieving quota
Experience working with Salesforce.com or similar CRM
Familiarity with different sales techniques and pipeline management
Computer use competency
Strong communication, negotiation and interpersonal skills
Self motivated and driven
BA/BS degree or equivalent

Office Technology Management/Secretarial Studies Internship

The Intern is responsible for various administrative tasks.

Duties and Responsibilities:

  1. Prepare reports and newsletters as needed.
  2. Help improve administration procedures.
  3. Greet guests and the general public; answer and route phone calls.
  4. Participate in organizing company events and career days.
  5. Communicate proactively and work with managers on assigned projects.
  6. Conduct a variety of general administrative tasks as assigned.

Qualifications:
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

Sample Web Design & Development Proposal Letter

[ Organization’s Name & Address ]

Dear Sir/Ma,

Website Design and Development Proposal Letter

We’re a [country] based software company specializing in web design and development. Each of our bespoke websites are tailored to your organization’s individual requirements, meaning that you receive a website that reflects your unique ethos and brand. Our designs are based on achieving your organization’s individual goals. Whether you want to increase customer involvement, raise sales or attract a higher calibrate of employees and suppliers, we utilize all forms of media to help achieve these goals in a way that’s right for you. It’s all very well producing a visually engaging, accessible website, but if it’s out-of-date within a month, it’s failed. All of our websites are powered by an easy-to-use online Content Management System (CMS), meaning that non-technical organization staff can update the website anytime on any Internet connected device. Full training is provided. Client involvement is integral to the success of any website, hence we work closely with you at every stage of the project. Plus, your project manager is always on hand to offer advice and answer questions, both during the project and post-launch.

You may use the website as a comprehensive platform to showcase your products, services and brands. The target audience can refer to your website for more information on your product or services. You can actually save a lot of money by updating new product information online rather than reprinting brochure or product catalogs. Reaching out to target audience as and when they want: What do you do when you need something? Don’t you Google it even at midnight? Your website can do the same for your target audience. You can use videos for product demo or virtual tour, text to highlight salient points, images to show the product, interactive charts to engage the user etc. All you need is to plan it properly. You need a website if you want to listen to customer feedback. Your website can offer you a huge pile of data on what the target audience needs and depending on that you can improve your product or business plan. You can actually directly communicate with your target audience via your web interface and improve your relationship with the end-users.

In real world if someone appreciates your product or service, you can not normally store it to show other people. But you can actually showcase them in your website to attract more clients. Apart from that you can also showcase product reviews done by real people in different social networks like Facebook / Twitter / Orkut. Testimonials from real people do wonder to businesses. You need a website if you need a channel to fight against the negative feedbacks about your company or products. This can actually help you to actively communicate with your target market. You need a website if you want to capitalize on word of mouth promotion of your products by your existing clients. Remember that, bees attract bees. Using free email address like YourName1234@gmail.com does not make your business look very professional. Develop your business credibility with email addresses at your domain name like sales@YourDomain.com. If you are an idea man, you need a website (or blog) to spread the message across the world.If there is an opportunity for your business to sell multiple products or upgraded versions to the same client; you need a website and keep the audience around. Kindly call us today to start your website design project, is very fast, high qulaity and worth’s every kobo spent. We look forward to hearing from you.

Your sincerely,
[Sender’s Signature ]
[ Sender’s Name ]

Note: This letter should be typed or written on your firm’s letter headed paper.