<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ 求职 - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ freeCodeCamp 是一个免费学习编程的开发者社区，涵盖 Python、HTML、CSS、React、Vue、BootStrap、JSON 教程等，还有活跃的技术论坛和丰富的社区活动，在你学习编程和找工作时为你提供建议和帮助。 ]]>
        </description>
        <link>https://www.freecodecamp.org/chinese/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ 求职 - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/chinese/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Mon, 25 May 2026 15:27:39 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/chinese/news/tag/job/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ 如何在简历中展示你的计算机技能 ]]>
                </title>
                <description>
                    <![CDATA[ 原文：Computer Skills for Résumé – Software Skill Proficiency Guide [https://www.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/] ，作者：Dionysia Lemonaki [https://www.freecodecamp.org/news/author/dionysia/] 拥有强大的计算机技能对几乎所有的工作都是必要的。这种知识可以使你从其他不具备这种知识的人中脱颖而出。 但是，什么是最需要掌握的计算机技能？当你获得这些技能时，你如何向未来的雇主有效地展示它们？ 在这篇文章中，你将了解到一些最重要的工作所需的计算机技能和软件程序。 你还将学习一些最基本的任务，你需要能够完成这些程序的能力。 最后，你将看到在你的履历表上列出计算机技能的一些注意事项。 以下是我们要讲的内容：  1. 为什么计算机知识很重要 [./#why-computer-literacy-is-importa ]]>
                </description>
                <link>https://www.freecodecamp.org/chinese/news/computer-skills-for-resume-software-skill-proficiency-guide/</link>
                <guid isPermaLink="false">624bbf0599ec7406219e56af</guid>
                
                    <category>
                        <![CDATA[ 求职 ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ luojiyin ]]>
                </dc:creator>
                <pubDate>Tue, 05 Apr 2022 03:20:00 +0000</pubDate>
                <media:content url="https://chinese.freecodecamp.org/news/content/images/2022/04/pexels-janko-ferlic-590493.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>原文：<a href="https://www.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/">Computer Skills for Résumé – Software Skill Proficiency Guide</a>，作者：<a href="https://www.freecodecamp.org/news/author/dionysia/">Dionysia Lemonaki</a></p><!--kg-card-begin: markdown--><p>拥有强大的计算机技能对几乎所有的工作都是必要的。这种知识可以使你从其他不具备这种知识的人中脱颖而出。</p>
<p>但是，什么是最需要掌握的计算机技能？当你获得这些技能时，你如何向未来的雇主有效地展示它们？</p>
<p>在这篇文章中，你将了解到一些最重要的工作所需的计算机技能和软件程序。</p>
<p>你还将学习一些最基本的任务，你需要能够完成这些程序的能力。</p>
<p>最后，你将看到在你的履历表上列出计算机技能的一些注意事项。</p>
<p>以下是我们要讲的内容：</p>
<ol>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#why-computer-literacy-is-important">为什么计算机知识很重要</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#software-skills-guide">软件技能指南</a>
<ul>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-operating-systems-and-of-basic-IT-troubleshooting">掌握操作系统和基本的 IT 故障排除知识</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-web-browsers-and-web-searching-skills">熟悉网络浏览器和网络搜索技能</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-project-management-software">项目管理软件的知识</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-communication-software">通信软件知识</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-email-and-digital-calendar-management-software">熟悉电子邮件和数字日历管理软件</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-word-processing-software">对文字处理软件的了解</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-spreadsheet-software">对电子表格软件的了解</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-presentation-software">掌握演示软件的知识</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-graphic-design-software">熟悉图形设计软件</a></li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#knowledge-of-coding-tools-and-databases">编程工具和数据库知识</a></li>
</ul>
</li>
<li><a href="https://chinese.freecodecamp.org/news/computer-skills-for-resume-software-skill-proficiency-guide/#how-to-include-computer-skills-on-r%C3%A9sum%C3%A9">如何在简历展示计算机技能</a></li>
</ol>
<h2 id="why-computer-literacy-is-important">为什么计算机知识很重要</h2>
<p>我们生活在一个数字世界中，而且这似乎不会很快改变。每年都会出现技术进步和突破。</p>
<p>尽管互联网和围绕它的技术快速增长，但世界上超过三分之一的人口没有接入互联网，也从来没有使用过互联网。</p>
<p>能够接触到它并拥有一台个人电脑本身就是一种特权。许多人也仍然缺乏使用互联网所需的数字技能。同时，由于缺乏熟练的劳动力，还有一些工作没有得到满足。</p>
<p>我们所做的工作——以及将来要做的工作——在很大程度上依赖于数字媒体和工具。</p>
<p>因此，基本的计算机技能被雇主认为是最基本的要求，计算机技能往往是招聘启事中列出的首要要求。</p>
<p>而且，无论你在哪个行业，你都需要计算机技能。</p>
<p>无论你是在医疗保健、零售、金融领域工作，还是担任行政助理，或是公司的人力资源部门，数字能力都会有帮助。</p>
<p>数字素养将使你在现代工作场所获得职业机会和实现发展的机会更高。</p>
<h2 id="software-skills-guide">软件技能指南</h2>
<p>在继续之前，我想做一个免责声明。</p>
<p>在接下来的章节中，我将介绍一些办公室工作中最常用的软件程序。根据你的工作，或你想过渡到的职业，你可能不需要所有这些知识。例如，如果你是一名行政助理，你可能不会在日常工作中使用命令行。如果你是一名软件开发人员，你不一定会写 Excel 公式。也就是说，计算机软件的知识将使你比缺乏这种知识的人更进一步。</p>
<p>因此，即使你不是搞技术的，你仍然可以从使用命令行来使重复的手工任务变得更快受益。而如果你是一个软件开发人员，你不会整天只写代码。你可能会使用文字处理器来编写文件，并需要知道如何创建演示文稿。</p>
<p>还有一点要补充的是，这个清单相当长，包括了许多程序。我并不打算写一个详尽的清单，而是提供一个关于什么可以帮助你提高生产力和竞争力的总体概念。</p>
<p>学习所有的软件需要时间，而且你不需要一下子就学会所有的东西。但你永远不知道这些知识何时会派上用场。所以，如果你想提高你的计算机知识，你可以慢慢开始，每次在你的工具箱里多加一个工具。</p>
<p>说了这么多，让我们看看工作场所中最常用的一些软件。</p>
<h3 id="knowledge-of-operating-systems-and-of-basic-IT-troubleshooting">掌握操作系统和基本的 IT 故障排除知识</h3>
<p>实现数字扫盲的第一步是对操作系统有一个全面的了解。</p>
<p>如果这不是你的目标，就没有必要成为一个 IT 专家，而是要了解它们的基本功能。</p>
<p><a href="https://www.freecodecamp.org/news/what-is-an-os-operating-system-definition-for-beginners/">操作系统（简称OS）</a>管理计算机上的所有软件和硬件，并允许你首先与计算机互动。</p>
<p>三个最广泛使用的操作系统是：</p>
<ul>
<li>微软的 Windows 操作系统</li>
<li>苹果公司的 macOS</li>
<li>Linux，这是一个开源的操作系统，与 Windows 和 macOS 相比，Linux 不是专有软件，没有一家公司拥有它。任何有知识的人都可以作出贡献，进行修改和改进，并帮助维护它</li>
</ul>
<p>此外，至少拥有一些基本的 IT 故障排除技能是有帮助的。这些知识将帮助你在遇到困难时找到解决方案，并帮助你自己解决问题。</p>
<p>例如，一些基本的计算机故障排除技能是：</p>
<ul>
<li>识别网络图标，知道 WiFi 是开还是关</li>
<li>知道当计算机程序卡顿时该怎么做</li>
<li>知道如何处理死机</li>
<li>知道何时以及如何重启系统</li>
<li>知道如何重启计算机或与使用任务管理器处理无反应的程序</li>
<li>知道当电脑不开机时该怎么做</li>
<li>知道如何解决 USB 记忆棒和外部硬盘驱动器的问题</li>
<li>知道如何加快缓慢的电脑速度</li>
<li>知道如何进行基本的网络诊断</li>
<li>知道何时更新系统，何时需要进行常规维护</li>
<li>知道用户账户管理</li>
</ul>
<p>你将使用 GUI（图形用户界面）在电脑上进行操作。不同的按钮和下拉菜单，指向和鼠标点击，以及你在屏幕上看到的不同图标使 GUI 易于使用。</p>
<p>然而，有时你可能需要使用命令行界面（或简称 CLI）。CLI 是一个基于文本的程序。你只用键盘导航在提示中输入命令，在执行重复性任务时可以节省大量时间。</p>
<p>在 Windows 上，该软件程序被称为命令提示符，在 macOS 上，它被称为终端。</p>
<p>shell（如 Bash 或 Zsh shell）是你（用户）和计算机操作系统之间的接口。</p>
<p>你在一个 CLI 应用程序中输入命令。shell 读取、处理和解释这些命令，并指示操作系统执行任务。</p>
<p>掌握命令行的方法将帮助你节省大量时间。一些需要掌握的基本命令行技能是：</p>
<ul>
<li>一般的系统命令</li>
<li>如何创建和删除文件和文件夹</li>
<li>如何查看文件和文件夹的内容</li>
<li>如何打开程序</li>
<li>如何使用命令行文本编辑器，如 Vim、Emacs 或 Nano，来写入文件</li>
<li>如何管理当前的工作进程</li>
</ul>
<h3 id="knowledge-of-web-browsers-and-web-searching-skills">熟悉网络浏览器和网络搜索技能</h3>
<p>知道如何快速有效地找到有意义的信息来帮助你解决问题，或使你能够为一个项目进行研究，是一项有价值的技能。</p>
<p>为此，你必须知道如何正确使用网络浏览器。</p>
<p>网络浏览器是一种应用软件，它在万维网上定位并向用户展示所要求的信息。</p>
<p>一些最流行的网络浏览器是：</p>
<ul>
<li>谷歌浏览器 Chrome</li>
<li>火狐 Mozilla</li>
<li>微软 Edge</li>
<li>苹果公司开发的 Safari</li>
</ul>
<p>要有效地使用网络浏览器，以下是你需要的一些技能：</p>
<ul>
<li>确保你使用现代和更新的网络浏览器，而不是旧的和不支持的浏览器</li>
<li>了解导航按钮。回到上一页，刷新当前页面，创建一个文件并在新的标签或窗口中打开该页面，了解你在浏览器菜单中的额外功能，仅举几例</li>
<li>输入 URL（Uniform Resource Locator 的缩写），URL 是一个独特的网络地址，你把它放在浏览器的地址栏里</li>
<li>了解如何阅读 URL，通过了解 URL 的不同部分并粗略识别网站</li>
<li>通过使用关键词进行搜索，并进行基本的互联网探索</li>
<li>知道如何应用过滤器进行高级搜索技术</li>
<li>利用标签式浏览，利用现代浏览器，你可以在同一个浏览器窗口中同时打开、管理和切换许多网页。</li>
<li>知道如何恢复标签</li>
<li>利用浏览器的内置书签管理器创建和管理书签，书签是“你的最爱”的另一个名称——你想保存和保留的网站，以供将来参考，你可以创建文件夹和子文件夹，以建立一个更有组织的书签系统</li>
<li>知道如何管理和删除你系统中的浏览历史</li>
<li>了解浏览器的安全和隐私问题，第一步是了解 <a href="https://www.freecodecamp.org/news/what-is-https-http-vs-https-meaning-and-how-it-works/">HTTP 和 HTTPS 的区别</a>，特别是在互联网上进行金融交易时。其次是在与他人共享电脑或使用公共电脑时，使用隐身模式来保护敏感数据</li>
<li>知道如何清除浏览器的缓存和 cookies，以改善加载时间，节省空间，并减少带宽</li>
<li>知道如何安装具有额外浏览器功能的扩展程序</li>
</ul>
<h3 id="knowledge-of-project-management-software">项目管理软件的知识</h3>
<p>当你成为一个团队的一部分时，你可能需要使用项目管理软件。</p>
<p>项目管理软件是一种用于项目任务管理和授权的互动协作工具。</p>
<p>它们有助于保持团队的组织性、生产力和效率，无论其规模如何。</p>
<p>一些最常用的项目管理软件是：</p>
<ul>
<li>Trello</li>
<li>Asana</li>
<li>Jira</li>
<li>Google Tasks</li>
<li>Evernote</li>
<li>Notion</li>
</ul>
<p>你也可以为你的个人项目使用项目管理软件。</p>
<p>它们可以帮助你保持动力，并直观地看到你正在取得的进展，所有这些都在一个地方。</p>
<p>使用这类应用程序时，需要了解的最常见的功能是：</p>
<ul>
<li>如何为团队创建一个自定义的工作空间</li>
<li>如何计划、组织和安排项目</li>
<li>如何用看板和用户故事创建一个可视化的路线图和时间表，以可视化项目的全貌，以及项目不同阶段的工作流程</li>
<li>如何创建和查看有需要完成的任务的清单</li>
<li>如何对任务进行颜色编程和标记，以便更好地组织和优先处理它们</li>
<li>如何更新和编辑任务的当前状态，在整个项目期间跟踪项目的进展，让所有团队成员保持最新状态。</li>
<li>如何标记和勾选已完成的任务为已完成</li>
<li>团队成员之间的协作，个别团队成员可以评论，添加注释和他们关于重大项目更新的意见，设置提醒，都在同一页面</li>
<li>如何分配任务给团队成员，轻松地可视化每个团队成员正在进行的任务</li>
<li>如何跟踪每项任务所花费的时间并管理最后期限以确保按时交付</li>
<li>如何创建内部报告和项目文件</li>
<li>如何创建和分享项目会议记录</li>
<li>如何创建和分享一个知识中心和维基，有一个与项目相关的资源库的策划仪表板</li>
<li>如何分享成就和项目的里程碑</li>
<li>如何跟踪成就，可以在一对一和审查中作为参考</li>
<li>如何跟踪预算编制，监测项目的支出，安排发票</li>
</ul>
<h3 id="knowledge-of-communication-software">通信软件知识</h3>
<p>当你是一个团队的一部分时，你需要与团队的其他成员进行清晰准确的沟通。</p>
<p>沟通工具可以提高团队的生产力，从而带来更好的产品和服务。</p>
<p>这些天来，越来越多的人远程工作，团队分布在世界的不同角落和不同时区。正因为如此，团队依靠专门的通信工具进行协作，相互交谈，并保持联系，无论他们在哪里。</p>
<p>每个团队都有自己的沟通风格，但无论他们的喜好如何，你都会被要求知道如何使用数字通信媒介。</p>
<p>这些分为不同的类别。</p>
<ul>
<li>实时即时通讯平台，它是电子邮件的替代品，提供更快的交流，有更多的沟通功能可供选择。</li>
<li>语音通话平台。</li>
<li>举办会议的视频会议平台。</li>
</ul>
<p>一些最常用的有：</p>
<ul>
<li>Microsoft Teams</li>
<li>Skype</li>
<li>Zoom</li>
<li>Google Meet</li>
<li>Slack</li>
<li>Discord</li>
<li>Loom</li>
</ul>
<p>你需要知道如何使用的一些功能是：</p>
<ul>
<li>如何单独给某人发信息进行直接交流</li>
<li>如何创建公开或私下的群组消息聊天</li>
<li>如何为特定项目或主题创建和利用自定义频道</li>
<li>如何记录会议和会谈。在这种情况下，所有参与者都需要知道录音的内容</li>
<li>如何主持一个教育性的网络研讨会</li>
<li>如何分享你的屏幕来解决问题</li>
<li>如何利用“举手”功能</li>
<li>了解键盘快捷键，以便为自己设置静音/取消静音，并打开/关闭相机</li>
</ul>
<h3 id="knowledge-of-email-and-digital-calendar-management-software">熟悉电子邮件和数字日历管理软件</h3>
<p>电子邮件是与你的同事沟通和在互联网上发送信息的一种快速方式。</p>
<p>你需要知道如何使用电子邮件供应商编写简明而有条理的电子邮件。</p>
<p>最常用的电子邮件软件应用是：</p>
<ul>
<li>Microsoft Outlook</li>
<li>Google Gmail</li>
</ul>
<p>你需要的基本知识包括以下内容：</p>
<ul>
<li>设置一个电子邮件帐户</li>
<li>格式化、发送和接收电子邮件</li>
<li>一次性向多人发送电子邮件</li>
<li>在电子邮件中附加文档文件、图像和语音信息</li>
<li>为你的联系人使用地址簿</li>
<li>给电子邮件加星号，以便在一个单独的文件夹中组织电子邮件</li>
<li>创建文件夹并对邮件进行分类</li>
<li>创建标签和过滤器，通过特定的关键词进行搜索，以最大限度地提高生产力</li>
<li>知道如何对电子邮件进行归档、优先排序和分组，以方便访问和提高时间效率</li>
<li>转发电子邮件</li>
<li>识别网络钓鱼邮件</li>
</ul>
<p>你的电子邮件账户将与一个数字日历程序同步。</p>
<p>例如，Gmail 使用谷歌日历，Outlook 使用 Outlook 日历。</p>
<p>对Calendly（一种日程安排应用程序）的了解也很有帮助。</p>
<p>你可以把它与你的电子邮件帐户连接起来，用于安排约会、会议、和预约。</p>
<p>在使用数字日历时，你需要具备的技能是：</p>
<ul>
<li>知道如何封锁你的时间和设置你的可用性</li>
<li>用链接分享你的日历，以便其他团队成员可以与你一起安排活动和会议</li>
<li>计划和安排会议</li>
<li>邀请出席者</li>
<li>取消活动</li>
</ul>
<h3 id="knowledge-of-word-processing-software">对文字处理软件的了解</h3>
<p>无论你的行业如何，知道如何以引人入胜的方式写作和格式化文本文件是一项必要的技能。</p>
<p>你可能需要为公司的网站写博客和文章。你可能会负责撰写和发布公司的通讯。你可能需要编写并经常更新公司内部使用的工具的文档。你可能需要写正式的报告给利益相关者。</p>
<p>不管是什么情况，知道如何使用文字处理器是必须的。</p>
<p>一些最常用的文字处理软件是：</p>
<ul>
<li>Microsoft Word</li>
<li>Google Docs</li>
<li>OpenOffice Writer</li>
<li>LibreOffice</li>
<li>Dropbox Paper</li>
</ul>
<p>以下是使用文字处理软件时应具备的一些基本技能：</p>
<ul>
<li>知道如何创建一个新的文档并插入、编辑、修改、复制、剪切和删除文本。知道如何启用自动保存，以确保你不会因意外而丢失任何工作</li>
<li>知道如何打开一个已经创建的文档</li>
<li>知道如何合并文档</li>
<li>知道如何改变页面视图布局</li>
<li>知道如何利用拼写和语法检查器来纠正拼写错误和错字</li>
<li>知道如何创建超链接</li>
<li>根据不同的场合选择正确的字体</li>
<li>知道如何格式化和强调文本，懂得键盘快捷键（如复制/剪切/粘贴，如何撤销和重做工作），以提高你的触摸打字速度</li>
<li>知道如何用标题、副标题和缩进的段落来组织和分割文本</li>
<li>对于大型文件，知道如何创建一个目录，以便其他人可以轻松地浏览不同的章节</li>
<li>知道如何选择、移动和居中对齐文本</li>
<li>知道如何使用预先存在的模板和创建新模板</li>
<li>利用查找和替换功能</li>
<li>通过突出显示文本并在文档的侧边栏中留下评论和建议来与其他团队成员协作</li>
<li>知道如何通过设置密码保护来分享和保护文件</li>
<li>知道如何以不同的文件格式保存文档（如将文档保存为 PDF 格式）</li>
<li>知道如何设置和打印文档</li>
<li>知道如何插入列</li>
<li>知道如何在文本文件中插入和格式化表格、文本框、图表、图形和视觉元素，使数据可视化</li>
<li>知道如何创建、编辑和格式化带有数据的复杂表格</li>
<li>知道如何导入图形和嵌入其他文件（如 Excel 工作表）</li>
<li>知道如何插入图像和书签</li>
<li>知道如何创建、分类和过滤邮件合并</li>
</ul>
<h3 id="对电子表格软件的了解"></h3>
<p>许多工作要求你能自如地处理较小甚至较大的数据集。</p>
<p>你需要知道如何以表格的形式存储和组织数据。</p>
<p>这样一来，你就能对数据进行分析和计算。</p>
<p>一些最常用的电子表格软件是：</p>
<ul>
<li>Microsoft Excel</li>
<li>Google Sheets</li>
<li>Apple Numbers</li>
<li>LibreOffice Calc</li>
</ul>
<p>以下是使用电子表格软件时应具备的一些基本技能：</p>
<ul>
<li>知道如何通过设置、创建、修改、格式化和保存工作表进行数据输入</li>
<li>知道如何管理多个工作表</li>
<li>如何合并单元格</li>
<li>知道如何根据你设置的条件，用条件格式化来突出显示列</li>
<li>知道如何过滤列</li>
<li>知道如何创建图形和图表</li>
<li>知道如何使用函数进行算术计算，例如，知道如何使用SUM将单个数值相加并找出总和，或者熟悉使用AVERAGE找出一系列数字的平均值，或者，知道如何使用MIN和MAX分别找到范围内的最高和最低数字</li>
<li>知道如何使用高级函数 <a href="https://www.freecodecamp.org/news/vlookup-in-excel/">如VLOOKUP</a>（或垂直查询）来搜索列。</li>
<li><a href="https://www.freecodecamp.org/news/excel-vba-tutorial/">知道基本的VBA</a>（这是Visual Basic Application的缩写）来创建Excel宏。知道如何使用宏命令来创建自定义函数，使重复的、耗时的手工任务自动化。</li>
<li>知道如何创建数据透视表和图表，以便利用可视化的方式对大量的数据进行可视化、比较和展示。知道如何用你的发现生成报告。</li>
</ul>
<h3 id="knowledge-of-presentation-software">掌握演示软件的知识</h3>
<p>知道如何组织一场演讲是一项有价值的技能。</p>
<p>你可能需要在几个团队成员面前做一个演讲，向他们介绍项目的最新进展。你可能需要向利益相关者做一个更正式的演讲，或者你甚至可能需要在一个大型会议上面对你所在领域的专家做一个演讲。</p>
<p>无论哪种方式，知道如何创建有吸引力的幻灯片都是必要的。</p>
<p>一些最流行的演示软件是：</p>
<ul>
<li>Microsoft PowerPoint</li>
<li>Google Slides</li>
<li>Keynote</li>
<li>Canva</li>
</ul>
<p>以下是使用演示软件时应具备的一些基本技能：</p>
<ul>
<li>知道如何选择预建的模板和配色方案，并通过在幻灯片中添加内容来定制它们</li>
<li>知道如何设计和格式化自定义模板</li>
<li>知道如何添加幻灯片的转场</li>
<li>在幻灯片中插入带有数据的图表、图形、图示和表格</li>
<li>创建图标、动画、转场，以及静态和动态图形的混合</li>
<li>知道如何插入剪贴画</li>
<li>为每张幻灯片添加注释</li>
<li>通过插入超链接使幻灯片具有互动性</li>
<li>知道如何插入媒体，如图片、音乐片段、音频和音效、GIF、短视频片段，或从电脑上传或从Youtube嵌入的完整视频</li>
</ul>
<h3 id="knowledge-of-graphic-design-software">熟悉图形设计软件</h3>
<p>设计软件的知识并不是设计师的专利。</p>
<p>你可能需要为电子邮件营销活动创建视觉内容，为公司活动制作海报，或者你可能想在演示文稿中添加详细的、具有视觉吸引力的信息图表。你可能想准备和编辑照片，或创建模拟模型来改善公司网站的用户体验。</p>
<p>一些最流行的设计软件有：</p>
<ul>
<li>Adobe Photoshop</li>
<li>Adobe Illustrator</li>
<li>Adobe InDesign</li>
<li>Adobe After Effects</li>
<li><a href="https://www.freecodecamp.org/news/how-to-use-figma-to-design-websites/">Figma</a></li>
<li>Sketch</li>
</ul>
<p>上述每个方案 <a href="https://www.freecodecamp.org/news/adobe-xd-vs-sketch-vs-figma-vs-invision/">都有不同的使用情况</a>。</p>
<p>一般来说，以下是使用平面设计软件时需要具备的一些基本技能：</p>
<ul>
<li>知道如何导入资产并正确地从头开始设置一个文件，为项目设置适当的宽度、高度、尺寸和显示设置。</li>
<li>知道如何打开已有的图像文件</li>
<li>知道如何创建和操作三维对象，以及如何从预先存在的和内置的样式中添加视觉效果</li>
<li>知道如何操作图像，包括静态和动态图像，并通过动画添加视觉效果</li>
<li>知道如何准备并使文件准备好用于印刷生产</li>
<li>知道如何以正确的格式保存和导出文件，并为其他程序做准备</li>
<li>知道如何使文件准备好在网络上使用</li>
<li>知道如何创建和处理互动媒体</li>
<li>知道如何进行基本的照片编辑、修饰和增强，并通过剪裁和移动来处理图像</li>
<li>知道如何创建图形、图表、信息图表和交互式PDF</li>
<li>知道如何为网页设计项目创建线框，原型和模拟，以及用户界面</li>
<li>知道如何创建标识、图标和艺术品</li>
</ul>
<h3 id="knowledge-of-coding-tools-and-databases">编程工具和数据库知识</h3>
<p>编程可以帮助你解决问题，并使用计算机理解的语言与计算机交流。而数据库是存储数据的程序，允许程序员使用查询来检索数据。</p>
<p>即使你不是作为一个开发人员工作，<a href="https://www.freecodecamp.org/news/what-is-coding/">了解编程的基本知识</a> 可以帮助你的工作的重复性方面更容易。</p>
<p>除此之外，编程是21世纪最基本的技术技能之一，更不用说对懂得编程的申请人有很高的需求。</p>
<p>下面是一些编程和与数据库互动的基本技能：</p>
<ul>
<li>熟悉文本编辑器并使用可用于编写源代码的智能功能。<br>
-熟悉具有类似IDE功能的代码编辑器--这里的IDE是集成开发环境的简称--如Visual Studio Code，用于编写和编辑源代码，编译和运行源代码，使用内置终端和调试，都在同一个屋檐下</li>
<li><a href="https://www.freecodecamp.org/news/git-and-github-for-beginners/">Git版本控制软件知识</a>，用于跟踪项目的变化和进行协作，创建、推送到、拉出和克隆一个仓库。</li>
<li>掌握更高级的Git命令，如合并和分支</li>
<li>根据手头的任务，掌握一种编程语言的知识。如果你需要在网站的视觉部分与用户互动（也称为客户端），学习前端技术，如HTML、CSS和JavaScript，如果任务涉及到事情的逻辑方面（或服务器端），分析数据，并使重复性和耗时的任务自动化，那么学习服务器端脚本编程语言，如Python</li>
<li>了解 <a href="https://www.freecodecamp.org/news/the-linux-commands-handbook/">Linux命令和在Linux环境中工作</a>，知道如何设置虚拟机并在本地计算机上运行Linux</li>
<li><a href="https://www.freecodecamp.org/news/learn-sql-free-relational-database-courses-for-beginners/">了解SQL</a>（结构化查询语言的简称），与关系型数据库（如Oracle数据库、MySQL和PostgreSQL）进行交互。知道如何编写基本的SQL命令来执行CRUD（创建读取更新删除的缩写）操作，以查询数据库和操作存储的数据</li>
</ul>
<h2 id="how-to-include-computer-skills-on-résumé">如何在简历展示计算机技能</h2>
<p>以下是将计算机技能列入简历时需要考虑的一些要点。</p>
<ul>
<li>你可以建立一个单独的专用部分，比如在简历的侧边栏，只为列出你的计算机技能而保留，包括一个带圆点的列表。</li>
<li>列入使你有别于其他申请人的计算机技能，并且只与该职位相关。<br>
请注意：如果你申请的是软件开发人员的职位，不要把Microsoft Word列为计算机技能。<br>
Microsoft Word可能是你在日常工作中使用的工具，但雇主认为你已经有了这方面的知识，而这不是他们想从你的简历中看到的</li>
<li>列出你所熟悉并能自如使用的技能。雇主可能会根据你添加的技能和技术来提问，所以不要误导，要直接说明你确切的熟练程度</li>
<li>列出你为提高技能所学的相关课程和文凭/证书</li>
<li>不要在列出你的技能的同时，用一个指标条来说明你的熟练程度<br>
例如，不要写上“我对JavaScript的熟练程度是78%”，这样的内容很容易导致混淆</li>
<li>要具体。例如，不要只写“Microsoft Excel的高级知识”。相反，提供一些例子，说明你能用Excel做什么，比如说出你精通的高级函数和公式的名称</li>
<li>与其只列举技能，不如重点提及成就、里程碑、指标，以及你的计算机技能如何帮助公司。雇主们有兴趣看到你的计算机技能在以前的工作中是如何帮助提高团队的生产力，增加销售和收入的<br>
例如，你可以提到你通过编写Python脚本自动完成的一项任务，为你的团队节省了大量时间</li>
<li>请确保简短，并以简明的方式表达你的观点，招聘人员和雇主不会花太多时间浏览简历，所以相关的信息需要以一种总结的方式轻松突出</li>
<li>你可以包括文章的链接，你在会议上的演讲，你主持的研讨会，或你拥有的YouTube频道，你在那里解释你所在领域的技术话题，这样，你就向未来的雇主表明，你参与了你的社区，而且你拥有他们正在寻找的知识和专长</li>
</ul>
<p><a href="https://www.freecodecamp.org/news/how-to-write-a-developer-resume-recruiters-will-read/">这里有一份撰写简历的指南</a>，提高招聘经理查看你的简历的可能性。</p>
<h2 id="">总结</h2>
<p>希望现在你能更好地了解如果你在今天的市场上找工作，你应该具备哪些计算机技能。我们讨论了你需要知道的有效利用软件程序的方法，以及如何向雇主清楚地介绍这些技能。</p>
<p>谢谢阅读本文！</p>
<!--kg-card-end: markdown--> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ 前端开发者如何写好简历 ]]>
                </title>
                <description>
                    <![CDATA[ 我一直都乐忠于评价发来我所在工作室的求职简历，并且我也经常听取别人对我自己简历的建议。 有一天我就想，帮着有需要的人审阅他们的简历应该是很有意思的一件事。我也没有预料到后来发生的事。 所以我就在一个有 120,000人 关注的频道上，发起了一个免费帮别人评阅简历的话题。 在接下来的3天里，越来越多的人发给了我他们的请求。完成了这些审阅后，我也总结出了许多很有用的要点供大家参考。 P.S. 需要提醒大家的是，本文中的简历教学主要针对前端开发者，要是你有不同的求职意向，这篇文章恐怕对你就不会那么有用了。 在写简历的时候我们应该避免那些问题？ 我发起话题的频道是一个专门的 web 开发者频道，按理来说参与者的简历水平应该是不错的。但这并不能代表每个人写简历时都不会犯错，据此我总结了一些需要注意避免的问题。  * 一定要注意你简历的可访问性和阅读体验 在我访问一份线上简历的时候，习惯于用键盘按键来浏览。按着键盘上的方向键，结果简历的页面却没有反应，这种体验是十分糟糕的，求职者脑子里估计压根儿没考虑这个问题。 简历的配色也很重要。试想一下白字在黄色背景上面的效果，简直要让人抓狂。 ]]>
                </description>
                <link>https://www.freecodecamp.org/chinese/news/how-to-prepare-the-resume-as-a-web-developer/</link>
                <guid isPermaLink="false">5d383b49fbfdee429dc5f23c</guid>
                
                    <category>
                        <![CDATA[ 求职 ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ 余博伦 ]]>
                </dc:creator>
                <pubDate>Thu, 29 Apr 2021 10:00:00 +0000</pubDate>
                <media:content url="https://chinese.freecodecamp.org/news/content/images/2019/07/v2-49eee51a6e5eeff906917f36cb1f0d0c_1200x500.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>我一直都乐忠于评价发来我所在工作室的求职简历，并且我也经常听取别人对我自己简历的建议。</p><p>有一天我就想，帮着有需要的人审阅他们的简历应该是很有意思的一件事。我也没有预料到后来发生的事。</p><p>所以我就在一个有 120,000人 关注的频道上，发起了一个免费帮别人评阅简历的话题。</p><p>在接下来的3天里，越来越多的人发给了我他们的请求。完成了这些审阅后，我也总结出了许多很有用的要点供大家参考。</p><p><strong>P.S. 需要提醒大家的是，本文中的简历教学主要针对前端开发者，要是你有不同的求职意向，这篇文章恐怕对你就不会那么有用了。</strong></p><h2 id="-">在写简历的时候我们应该避免那些问题？</h2><p>我发起话题的频道是一个专门的 web 开发者频道，按理来说参与者的简历水平应该是不错的。但这并不能代表每个人写简历时都不会犯错，据此我总结了一些需要注意避免的问题。</p><ul><li><strong>一定要注意你简历的可访问性和阅读体验</strong></li></ul><p>在我访问一份线上简历的时候，习惯于用键盘按键来浏览。按着键盘上的方向键，结果简历的页面却没有反应，这种体验是十分糟糕的，求职者脑子里估计压根儿没考虑这个问题。</p><p>简历的配色也很重要。试想一下白字在黄色背景上面的效果，简直要让人抓狂。</p><p>要知道每个人的视力是有差异的，要是你的配色太糟糕，一些人可能根本就看不清楚你的内容。</p><p>要记得阅读你在线简历的人可能会有视觉障碍，在你给你的简历加上花里胡哨的特效之前，先保证内容能够被看清楚。</p><ul><li><strong>不要再尝试为自己的技能评分了</strong></li></ul><figure class="kg-card kg-image-card"><img src="https://pic4.zhimg.com/80/v2-c8552da7564fef65d3537a87db505cef_hd.png" class="kg-image" alt="v2-c8552da7564fef65d3537a87db505cef_hd" width="600" height="400" loading="lazy"></figure><p>技能评分这个脑残的设定曾经一度在简历圈风靡。你说你掌握了 85% 的 AngularJS？那 TM 到底是什么意思？你掌握了 80% 的 NodeJS 又要怎么解释？一般来讲对一项技能的掌握程度只有三种评判方式：</p><ul><li>你压根就不懂</li><li>你才刚开始学</li><li>你对这事儿信手拈来游刃有余</li></ul><p>对于那些你压根儿就不懂的技术就别瞎扯了，给我讲讲你最近学的和熟练掌握的才是正经事。并且你也需要一些实际的项目经验来证明你是真的掌握了。</p><ul><li><strong>响应式设计，移动端适配</strong></li></ul><p>很多 HR 或老板收到你的简历后很有可能就直接在手机上打开看看。假若你的简历是响应式设计，能够在移动端良好的显示，我至少能对你有个良好的第一印象。否则你的简历可能连看都没被看上一眼就被关掉了。</p><p>想要避免这样糟糕事情的发生。一定要让你的在线简历对移动端友好。</p><h2 id="--1">在简历中你要怎么证明自己？</h2><p>你的<strong>项目经历</strong>才是整个简历里真正的干货。他们能向我证明你确实有相关的工作经验。</p><p>在简历里列出你工作经历的时间线确实很不错。但作为一个开发者来讲，项目经历才是真正能够证明你的东西。</p><p>下面是一些比较好的做法：</p><ul><li><strong>让我看到你写的代码和在线项目</strong></li></ul><p>你描述了一大堆你开发的项目，开发过程，使用的技术。但是你写的代码在哪里？</p><p>你的一些私人的项目确实需要保密，但是我连你写的一行代码都看不到的话，真的会很难办。面试官会很难抉择到底要不要给你一个机会。</p><p>退一步讲，代码不能看的话，你上线的项目在哪里？你有代码给我看的话，为什么它不能在线上跑呢？</p><p>尝试去开发一些业余和个人项目，你可以使用和你工作中相同的技术栈。一方面熟能生巧，另一方面你写简历的时候也好有东西给别人看。</p><ul><li><strong>让我知道你贡献过哪些代码</strong></li></ul><p>团队开发项目可以很好的证明你的协作能力。绝大多数项目都需要团队配合。</p><p>在你的简历里，一定要明确你在团队合作中扮演的角色和你的贡献。Github 的活跃度统计就是一个很好的展现方式。</p><p>一定要诚实，不要过分夸大你在某个项目中的作用。因为你写的那些代码终会暴露你。</p><ul><li><strong>证明你并不需要依赖 Bootstrap 或 jQuery 一类的框架</strong></li></ul><p>一般入门 CSS 和 JavaScript 的时候都会学到 Bootstrap 和 jQuery，但要是你的每个项目都必须依赖这俩货那就是一个很严重的问题了。</p><p>虽然 Bootstrap 用起来很爽，可我得知道你对 CSS 的了解到底有多少。同样我也得知道你能写原生的 JavaScript，这样我才能放心让你加入使用任何前端技术架构的项目中。</p><h2 id="--2">最重要的是什么？</h2><p>现在我们已经大概过了一遍简历里应该出现的和需要避免的东西。那么面试官最看重你简历里的什么呢？</p><p>接下来的一些建议可能不是那么具体，但同样重要。</p><ul><li><strong>不要墨守成规</strong></li></ul><p>几乎每个人的在线简历都是简介&gt;技能&gt;项目经验&gt;联系方式的框架顺序。几乎每个人都在用汉堡按钮做导航。</p><p>你想要吸引面试官的注意？那就来一些无伤大雅的小创意吧。</p><p>我就看到有人把他的导航条放到了右侧，而不是通常的左侧或者顶部。简单的改变却很有效。</p><ul><li><strong>符合你工作的预期</strong></li></ul><p>你想应聘什么样的职位，就根据它的要求和职责来撰写你的简历。</p><p>你想应聘移动 WebApp 的岗位简历里却满是 Wordpress 主题。这会让人很困惑，同时也让人觉得你可能并不适合你所申请的岗位。</p><p>我们欣赏全才，但你也需要展现出自己独特的一面。</p><p>最好的方法是针对你所应聘的职位专门撰写一份简历。</p><ul><li><strong>细节决定成败</strong></li></ul><p>你永远都不知道面试官会关注你简历上的哪一点。</p><p>面试官也只是浏览而不会从头到尾逐字逐句地看。所以请确保你的排版美观大方，字句通顺，不要有打不开的链接。</p><p>差不多就这样了。如果你对前端工程师撰写简历还有什么问题，或者想和大家分享你自己的心得，欢迎在评论区参与讨论。</p><p>原文链接：<a href="https://www.freecodecamp.org/news/i-reviewed-fifty-portfolios-on-reddit-and-this-is-what-i-learned-e5d2b43150bc/">What I learned from reviewing 50 portfolios on Reddit in 3 crazy days</a>，作者：<a href="https://www.freecodecamp.org/news/author/seejamescode/">James Y Rauhut</a></p><p><strong>【附】满足某些同学的好奇心</strong></p><p>原作者的在线简历：<a href="https://link.zhihu.com/?target=http%3A//www.seejamescode.com/" rel="nofollow noreferrer">James Y Rauhut</a></p><p>原作者帮人审阅简历的话题：<a href="https://link.zhihu.com/?target=https%3A//www.reddit.com/r/webdev/comments/508dys/want_your_portfolio_reviewed/" rel="nofollow noreferrer">Want your portfolio reviewed? : webdev</a> （里面也有很多值得参考的在线简历链接袄）</p> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ 如何写好简历，找到第一份编程工作 ]]>
                </title>
                <description>
                    <![CDATA[ 每个人在求职时都表示自己对编码和开发充满热情。作为一名开发人员和招聘经理，我正在寻找的是这种热情的证据。 本周，我看了一些人的简历，他们想要转行并寻找他们的第一份开发工作。在决定他们是否可以入围候选人之前，我对每个人花了 2-5 分钟研究他们的简历。 找工作的时候，要在短时间内打动一个陌生人！我关注这些东西：  * 在 GitHub 上持续提交  * 个人项目  * 展示具备良好的书面沟通能力 在 GitHub 上持续提交 你的 GitHub 贡献记录是什么样的？ 如果你热衷于编码，那么我想你会持续写代码。 展示这种热情的一种简单方法是公开你的编码记录。在 GitHub 上建立仓库，了解如何在上面提交代码，并开始提交。 这给雇主一个很好的信号，表明你每天都在编码，以及你真的对编码充满热情。 我要寻找的是一张漂亮的绿色图表。让我们在 GitHub 上查看某人的公开贡献历史： GitHub 贡献历史示例这个人在一年中仅在 11 月、12 月、3 月和 7 月有公开编码记录。我怀疑这些项目是训练营要求他写的，也就是强制性要求编写的项目。当查看来自同一训练营的候选人时，每个人的 ]]>
                </description>
                <link>https://www.freecodecamp.org/chinese/news/how-to-get-your-first-dev-job/</link>
                <guid isPermaLink="false">6029f5ab6183a705401568b2</guid>
                
                    <category>
                        <![CDATA[ 职业发展 ]]>
                    </category>
                
                    <category>
                        <![CDATA[ 求职 ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Chengjun.L ]]>
                </dc:creator>
                <pubDate>Mon, 15 Feb 2021 07:20:00 +0000</pubDate>
                <media:content url="https://chinese.freecodecamp.org/news/content/images/2021/02/photo-1455849318743-b2233052fcff.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>每个人在求职时都表示自己对编码和开发充满热情。作为一名开发人员和招聘经理，我正在寻找的是<strong>这种热情的证据</strong>。</p><p>本周，我看了一些人的简历，他们想要转行并寻找他们的第一份开发工作。在决定他们是否可以入围候选人之前，我对每个人花了 2-5 分钟研究他们的简历。</p><p>找工作的时候，要在短时间内打动一个陌生人！我关注这些东西：</p><ul><li>在 GitHub 上持续提交</li><li>个人项目</li><li>展示具备良好的书面沟通能力</li></ul><h2 id="-github-">在 GitHub 上持续提交</h2><p>你的 GitHub 贡献记录是什么样的？ 如果你热衷于编码，那么我想你会持续写代码。</p><p>展示这种热情的一种简单方法是公开你的编码记录。在 GitHub 上建立仓库，了解如何在上面提交代码，并开始提交。</p><p>这给雇主一个很好的信号，表明你每天都在编码，以及你真的对编码充满热情。</p><p>我要寻找的是一张漂亮的绿色图表。让我们在 GitHub 上查看某人的公开贡献历史：</p><figure class="kg-card kg-image-card kg-width-wide kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2020/08/Screen-Shot-2020-08-10-at-5.41.51-pm.png" class="kg-image" alt="Screen-Shot-2020-08-10-at-5.41.51-pm" width="600" height="400" loading="lazy"><figcaption>GitHub 贡献历史示例</figcaption></figure><p>这个人在一年中仅在 11 月、12 月、3 月和 7 月有公开编码记录。我怀疑这些项目是训练营要求他写的，也就是强制性要求编写的项目。当查看来自同一训练营的候选人时，每个人的贡献历史图相同，他就很难脱颖而出。</p><p>这个贡献历史图一年中有几个月是没有记录的，没有向我这个雇主展示出这个人强烈的编程热情。</p><p>这个人可能每天都在自己的个人笔记本电脑上编码，但是作为雇主，我无法看到并认可这种努力。</p><p>让我们看看另一个人的贡献历史：</p><figure class="kg-card kg-image-card kg-width-wide kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2020/08/Screen-Shot-2020-08-11-at-8.00.53-pm.png" class="kg-image" alt="Screen-Shot-2020-08-11-at-8.00.53-pm" width="600" height="400" loading="lazy"><figcaption>几乎每天都在 GitHub 上贡献</figcaption></figure><p>这个人几乎每天都在对 GitHub 提交。这是一个非常强烈的信号，表明她对编码感兴趣，并且在过去的十二个月中每天都有编码。</p><p>这真是太棒了，特别是如果她不是专业程序员的话。我想和这个人交谈，并了解她的工作状况！ 即使她大部分的提交都是对 <code><a href="README.md">README.md</a></code> 文件的文本编辑，但这仍然表明她在坚持持续编程。</p><h2 id="-"><strong>个人项目</strong></h2><p>在简历里加上你的项目链接，并确保这些项目可以让雇主眼前一亮！</p><p>你可以参考这些方法：</p><ul><li>放入真实内容。</li><li>加入自己的个性，比如加入对你来说有些意义的图片。</li><li>为你的工作而感到自豪：不需要精美的设计——我在寻找的是工程师，而不是视觉设计师。但是也要注意有基本的美感：元素重叠吗？有足够的空白空间吗？它既可以在移动设备上也可以在网页上显示吗？</li></ul><p>我注意到简历中常出现的问题：</p><ul><li>没有项目链接。</li><li>项目是一个训练营项目，没有个性。当我有来自同一训练营的 20 名毕业生的简历时，项目都是差不多的。如果你不将你的作品集做得有个性，则无法向雇主展示出“我很有热情”。</li><li>链接的项目无法运行。确保你有一位朋友在与你的设备不同的设备上进行测试。</li><li>链接的项目需要一定的设置才能查看。让我们轻松一点！ 准备一份详细的 <code>README.md</code> 文件，阐述如何进行设置。放入大量屏幕截图、UX 流、序列图等。雇主有可能会点击鼠标，但我想雇主极不可能下载你的项目。因此，屏幕截图、UX 流等将需要演示你的项目如何运行。</li></ul><p>举一些“好”还是“坏”的例子？我不想评价别人的作品，因此我展示一个自己的项目吧。<a href="https://codepen.io/ailyntang/full/oJeLdr">这个项目就是没有个性的例子</a>：</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2021/01/image-41.png" class="kg-image" alt="image-41" width="600" height="400" loading="lazy"><figcaption>我的 drum machine 项目</figcaption></figure><p>看起来是不是很熟悉？这是我在 freeCodeCamp 做的项目。我完全没有给它加入个性。更糟糕的是——成千上万的人已经完成了这个项目，并使它变得更酷！ 我永远不会告诉雇主去查看这个项目，以此来表达我的热情。</p><p>我还在 freeCodeCamp 做了一个个人作品集，这个项目就完全不同了。我花了很多时间来个性化<a href="https://ailyntang.github.io/">这个项目</a>。无论从哪方面来看，它都不是完美的（它不是响应式的！），但它有我的特点。</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2021/01/image-42.png" class="kg-image" alt="image-42" width="600" height="400" loading="lazy"><figcaption>我的个人作品集项目</figcaption></figure><p>我的作品集包含了上面列出的其中一个问题：链接的项目无法运行。当我创建这个项目时，我的<a href="https://ailyntang.github.io/#projectPomodoro">番茄计时器</a>看起来很漂亮。</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2021/01/image-43.png" class="kg-image" alt="image-43" width="600" height="400" loading="lazy"><figcaption>我的番茄计时器本来是这样的，背景很漂亮</figcaption></figure><p>过了几年之后，我之前链接到的图片已经不能用了。因此，我的<a href="https://ailyntang.github.io/pomodoro/">实时番茄定时器</a>看起来有点可悲。这不是很大的问题，但确实无法展示出我的能力。这仿佛是我在让雇主去点击链接，但是显然我自己作为雇主都不想去点击。</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2021/01/image-44.png" class="kg-image" alt="image-44" width="600" height="400" loading="lazy"><figcaption>我的番茄计时器现在看起来是这样——没有图片</figcaption></figure><p>底线是：如果你要让一个雇主去点击一个链接，那么你需要自己先点一下试试，确保你自己对其满意。</p><h2 id="--1">展示具备良好的书面沟通能力</h2><p>我会说，每一份技术工作都对书面沟通能力有要求。你的代码中有文档（尽管理想情况下，你的代码本身就可以说明其含义）。日常工作中还包括在 Slack 等社交软件沟通，以及在 GitHub 提交。</p><p>这是简历中包含的另一个简单的要点：“出色的沟通技巧”。每个简历都列出了它。作为雇主，我很难理解这一点，因为很难通过简历评估沟通能力。</p><p>但是，如果你通过 GitHub 上优秀的 <code>README.md</code> 文件、你写的在线文章或你的个人博客的链接来展示这种能力，那么你就做对了！</p><p>作为雇主，我一定会点击那些链接。它们可以帮助我了解你的性格、沟通风格，以及你如何投入精力实现你的想法，等等。</p><p>下面是我的一个很差的 <code>README.md</code> 文件。我没有为此文件付出任何努力，因此，如果不先更新这个 <code>README.md</code> 文件，我就不会在简历中放这个项目的链接。</p><figure class="kg-card kg-image-card kg-width-wide"><img src="https://www.freecodecamp.org/news/content/images/2021/01/image-45.png" class="kg-image" alt="image-45" width="600" height="400" loading="lazy"></figure><p>但是，我肯定会链接到我在 freeCodeCamp 上编写的一些教程。</p><h2 id="--2"><strong>总结</strong></h2><p>如果你想要转行，那么找到第一份开发工作可能让你感到很困难。请坚持下去！ 你已经具备很多核心能力，可以帮助你适应不同的行业。</p><p>希望这篇文章帮助你创建一份简历，让你在人群中脱颖而出，彰显独特个性，从而找到第一份开发工作。</p><p>原文：<a href="https://www.freecodecamp.org/news/how-to-get-your-first-dev-job/">How to Get Your First Dev Job – Insights from Reviewing Career Switchers' Résumés</a>，作者：<a href="https://www.freecodecamp.org/news/author/ailyntang/">Ai-Lyn Tang</a></p> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ 自学编程 10 个月，40 岁的我从一名英语老师转行成为开发者 ]]>
                </title>
                <description>
                    <![CDATA[ 40 岁的时候，我转行成为一名前端开发者。在此之前，我没有任何技术相关的工作经验，没有相关专业学位。我完全是通过免费的资源自学编程，几乎没有为此花费什么钱，而且学习的时候我做着一份全职工作。 > “外面下着雨，我正坐在马德里市中心的一家咖啡馆里，一边喝着咖啡一边敲着键盘。不久后我将以前端开发者的身份开启全新的职业生涯。就在 10 个月前，我还在 Granada（西班牙格拉纳达大学）当英语老师，对编程一窍不通。而现在，我即将成为一名软件开发者，这是怎么发生的呢？” 几个月前，我在入职新工作的第一天写下了上面这段激动人心的话语。跟我来吧，我将和你们分享我是如何实现这一切的。 特别的感觉 当我刚开始考虑成为一个开发者的时候，我会将信将疑地阅读类似这篇文章的故事。我会试图找出这些文章作者所拥有的而我所没有的特殊的背景——可能是这种背景使得他们适合这种工作。 后来，我慢慢明白事情不是那样的。成为一名开发人员不需要任何的 "特殊" 背景。我不会告诉你这非常容易，因为事实并非如此，但好消息是每个人都可以达到要求。你必须非常努力工作，学习很多东西，不能半途而废。当出现困难的时候，更不能退缩。当你 ]]>
                </description>
                <link>https://www.freecodecamp.org/chinese/news/how-i-switched-careers-and-got-a-developer-job-in-10-months-a-true-story/</link>
                <guid isPermaLink="false">5f28d5e5c8da7105cbc1484c</guid>
                
                    <category>
                        <![CDATA[ 自学编程 ]]>
                    </category>
                
                    <category>
                        <![CDATA[ 前端开发 ]]>
                    </category>
                
                    <category>
                        <![CDATA[ 求职 ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Chengjun.L ]]>
                </dc:creator>
                <pubDate>Wed, 27 Jan 2021 07:20:00 +0000</pubDate>
                <media:content url="https://chinese.freecodecamp.org/news/content/images/2020/08/1596536656860.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>40 岁的时候，我转行成为一名前端开发者。在此之前，我没有任何技术相关的工作经验，没有相关专业学位。我完全是通过免费的资源自学编程，几乎没有为此花费什么钱，而且学习的时候我做着一份全职工作。</p><blockquote>“外面下着雨，我正坐在马德里市中心的一家咖啡馆里，一边喝着咖啡一边敲着键盘。不久后我将以前端开发者的身份开启全新的职业生涯。就在 10 个月前，我还在 Granada（西班牙格拉纳达大学）当英语老师，对编程一窍不通。而现在，我即将成为一名软件开发者，这是怎么发生的呢？”</blockquote><p>几个月前，我在入职新工作的第一天写下了上面这段激动人心的话语。跟我来吧，我将和你们分享我是如何实现这一切的。</p><figure class="kg-card kg-image-card"><img src="https://chinese.freecodecamp.org/news/content/images/2021/01/image-16.png" class="kg-image" alt="image-16" width="600" height="400" loading="lazy"></figure><h2 id="-">特别的感觉</h2><p>当我刚开始考虑成为一个开发者的时候，我会将信将疑地阅读类似这篇文章的故事。我会试图找出这些文章作者所拥有的而我所没有的特殊的背景——可能是这种背景使得他们适合这种工作。</p><p>后来，我慢慢明白事情不是那样的。成为一名开发人员不需要任何的 "特殊" 背景。我不会告诉你这非常容易，因为事实并非如此，但好消息是每个人都可以达到要求。你必须非常努力工作，学习很多东西，不能半途而废。当出现困难的时候，更不能退缩。当你自己觉得不适合做这件事情的时候，说服自己不要陷入绝望。以上就是你所需要的，每个人都可以通过练习来做这些事情。</p><p>我起步的时候没有任何相关背景。我并没有把钱花在昂贵的课程上面，在忙碌的一天工作之后我并没有太多时间去学习，同时我也已经步入中年。</p><p>每个人的情况是不一样的，但是只要你用心去做，你就能做到。</p><h2 id="--1">背景</h2><p>在写下第一行代码之前，我从未接触过编程，也从来没做过相关工作。在职业生涯的早期，我从事餐饮工作，然后我获得了音乐相关专业的学位，之后在西班牙当了十年的英语老师。我甚至对电脑的基本操作也不是很熟练，但总是对新兴科技感到好奇与兴奋。<strong>我认为程序员是这个时代的超级英雄</strong>。</p><p>不过，我从未想过自己会成为程序员。部分原因是我认为编程只有精英才能做。这种工作是为那些从名牌大学毕业的聪明人准备的。虽然这样的人确实存在，但是大多数人并不是好莱坞电影里面的那种有天赋的天才。开发远比我想象的要容易得多。</p><h2 id="--2">故事起源</h2><p>一切源于我和妻子之间一次热切的交谈。她当时正在探索在 STEM 领域尤其是技术领域女性人数减少的原因。她决定通过成为一名程序员来改变这一现状，并且成为我们家族中年轻女孩的榜样。就这样，她开始学习了解了。</p><p>这很快也让我兴奋起来，因为我们意识到有很多可用的资源。这不是什么黑魔法，而是一种我们可以学习和掌握的技能。</p><p>剧透一下，她成功地从人力资源方向<a href="https://twitter.com/Elena_in_code/status/973319215196368896" rel="nofollow">转行</a>，比我早一个月获得了开发的工作。</p><p>某一天，我们在一个科学博物馆里面发现了一本有关儿童编程的书籍。一回到家我们就打开 Notepad，写下 <code>&lt;h1&gt;Hello World&lt;/h1&gt;</code>，在浏览器里面打开，然后将页面颜色更改为红色。我们兴奋地尖叫着：这是什么魔法！</p><p>我彻底迷上了编程。我想要用电脑和代码做自己想做的事情。</p><h2 id="--3">我之前的工作</h2><p>那时我已经做英语老师八年了。这不是典型的一个人在谈论他的没有前途的工作的场景。相反我非常热爱这份教学工作，喜欢工作的时候和孩子们在一起，而且我在工作时很自在。</p><p>但是有时候，即使你爱上了某样事情，你心里也知道是时候该继续前进了。这是我人生的一个新阶段，我有了新的展望和抱负。<strong>最重要的是，我想要一个新的挑战，让自己远离舒适区。</strong></p><figure class="kg-card kg-image-card"><img src="https://chinese.freecodecamp.org/news/content/images/2021/01/image-17.png" class="kg-image" alt="image-17" width="600" height="400" loading="lazy"></figure><h2 id="--4">通往成功的真正路径</h2><p>显然并不存在什么通往成功的标准路径。我们三个人（我的妻子、我和我的好朋友）为了转行几乎同时开始学习编程。我们三个人现在都是开发者，每个人的方法都不一样，每个人都有适合自己风格的方法。如果说我们之间有什么共同点的话，那就是我们没有放弃，没有半途而废。我们都付出了很多努力。</p><p>所以这里我要告诉你们的不是一个通用的方法，而是我自己所特有的方法。这不是唯一的方法，可能也不是最好的，但是这对我很有效。</p><h2 id="--5">开始</h2><p>首先，我在 YouTube 上观看关于编程的视频，找到切入点。然后我开始学习 HTML 和 CSS，按照教程构建了一些基本的 Web 网页。我开始明白这是自己想要从事的工作。</p><h2 id="--6">设定目标</h2><p>我向两个在这个领域工作的朋友寻求建议。那些鼓励的话语对我在前行的路上专注于一个明确的目标至关重要。</p><p>我花了些时间整理所有的选项，并设定了对我有用的现实目标。我需要在最短的时间内转行成功。我没有其他的收入来源，这意味着我要继续做之前的工作直到能转行为止。</p><p>我认为前端开发是初学者最容易进入同时是需求量最大的一个方向。我专注于初创公司所需要的技能而不是自由职业，这样我进一步缩小了范围。</p><p>然后我设定了最后期限。我不希望这个目标只停留在待办事项清单的末尾。2017 年的春天，我向自己承诺接下来的教学将是我老师生涯的最后一站。就是说到 2018 年 9 月份，我将不会继续做教学相关的工作。</p><p>在这个阶段我能够使一切尽在掌握中么？显然不可能的。在做出如此具有冒险的职业选择时，肯定会存在不确定性。在那个阶段和整个过程中都存在各种各样的疑问。<strong>关键是能否坚持不懈，不半途而废。</strong>一旦做出决定，我将沿着这条路走下去，看看未来将会发生什么。</p><figure class="kg-card kg-image-card"><img src="https://chinese.freecodecamp.org/news/content/images/2021/01/image-18.png" class="kg-image" alt="image-18" width="600" height="400" loading="lazy"></figure><h2 id="--7">学习</h2><p>我明白不断进步的唯一途径就是学习。我有一份全职工作，所以永远都不可能等到有时间的时候。我必须一边工作一边学习，要么就干脆不做。幸运的是，我的妻子同时也在学习。这有助于安排我们自己的时间，以最大限度地提高学习时间。首先，我们给自己制定了一个 "周末训练营" 计划，就是说我们会花整个周末来编程。</p><p>典型的一天是这样的：</p><ul><li>8:00 am：起床，吃早饭</li><li>8:30 am：开始编程</li><li>12:30 pm：去健身房</li><li>1:30 pm：吃午饭，休息</li><li>3:00/4:00 pm：继续敲代码</li><li>8:00/11:00 pm：完成一天的工作</li></ul><p>暑期来了，我将 "周末训练营" 变成了 "每日训练营"，从而充分利用了这个假期。尽管有享受夏天和放松的诱惑，我还是坚持不懈地完成了计划。</p><p>九月份，我又得回去工作了。我有意识地决定减少工作时间，接受了更少的收入以换取更多的学习时间。这也是我在转行的路上踏出的更为坚实的一步。</p><p>暂停敲代码去工作的时候，我感觉很难受，我想要回到电脑面前解决某个问题或是 bug。但是现实生活开始了，一学年的开始总是需要很多时间来准备和组织。正如其他老师会告诉你的，这些工作也占用很多个人时间。</p><p>就在那个阶段，我感觉我平常的任务要偏离原有的目标了。尽管我尽最大努力，但是我编写代码的时间越来越少了。我开始失去动力。我试着坚持下去，但是有时候就是没有时间来写。<strong>即使有明确的目标和良好的动机，生活也会使事情变得复杂。</strong></p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://chinese.freecodecamp.org/news/content/images/2021/01/image-19.png" class="kg-image" alt="image-19" width="600" height="400" loading="lazy"><figcaption>我的 GitHub 上显示了十月份活跃度下降</figcaption></figure><p>然而，你可以从我的 GitHub 活跃度显示中看到，我一直在尝试。我不停地投入时间，哪怕是一小时，哪怕是读一篇文章。我做了所能做的一切来养成这个习惯。当你把一件事拖得太久，可能会失去原来的习惯。</p><p>随着 12 月的临近，眼看着新年即将到来，最后的期限也越来越近，我再次振作起来，做事变得井井有条。我开始努力工作，不管我有多累，时间有多少，我都要坚持几小时。有时我会早点起来敲代码，有时会熬夜。</p><p>这意味着我的生活几乎被压缩到只能一边做一份付房租的工作一边学习。我基本上保持着这种节奏，一直到我收拾行李搬到马德里的那一天为止。那是 2018 年的春天，距离截止日期还有几个月。</p><figure class="kg-card kg-image-card"><img src="https://chinese.freecodecamp.org/news/content/images/2021/01/image-20.png" class="kg-image" alt="image-20" width="600" height="400" loading="lazy"></figure><h2 id="--8">工具和资源</h2><p>在一边工作一边学习编程的这 10 个月中，我的主要精力都放在了编程上面，我在 <a href="https://twitter.com/Syknapse" rel="nofollow">Twitter</a> 上面被问到最多的问题是“使用了那些资源”。我写了<a href="https://www.freecodecamp.org/news/the-tools-and-resources-that-landed-me-a-front-end-developer-job-1314c6f1fa7f/">另一篇文章</a>，深入回答了这个问题。这里，我列一个我认为是最重要的列表（包含最重要的工具和资源）。</p><h2 id="--9">课程</h2><ul><li>freeCodeCamp相关课程</li><li>Udemy 上面 Cassidy Williams 、Colt Steele 的课程</li><li>Wes Bos 上的 JavaScript 30 以及其他的课程</li><li>YouTube 上面的资源：Traversy Media，LevelUpTuts</li><li>Lynda.com 上面 Christina Truong 的课程</li><li>Udacity 上面的前端纳米课程（这是一个付费课程，但是我从 Google 获得了奖学金）</li></ul><p>仅仅学习这些课程是不够的，所以我还通过这些工具或方式来学习，进而找到工作：</p><ul><li>Twitter：这是我所有知识来源的地方，尤其是 <a href="https://twitter.com/hashtag/100daysofcode?f=tweets&amp;vertical=default&amp;lang=en" rel="nofollow">#100DaysOfCode</a> 社区，它给了我无穷的动力和支持</li><li>GitHub：一个非常重要的学习工具，也是我免费托管所有项目的地方，通常这是雇主重点关注的地方</li><li>个人作品集：通过构建开发项目和其他项目，我学习了最重要的开发技能</li></ul><p>你可以在 GitHub 上面查看<a href="https://github.com/Syknapse/My-Learning-Tracker-first-ten-months">我的学习轨迹</a>，其中包含我前 10 个月学习路径和使用资源的完整列表。</p><figure class="kg-card kg-image-card"><img src="https://chinese.freecodecamp.org/news/content/images/2021/01/image-21.png" class="kg-image" alt="image-21" width="600" height="400" loading="lazy"></figure><h2 id="--10">找到工作</h2><p>令人惊讶的是，找工作对我而言并不太复杂。我没有海投，也没有花很多很多时间找工作。相反，我是有选择性并且专注的。</p><p>最后，我获得了五个面试邀请。其中一个拒绝了我，有一个未能完成，完成了其余三个并获得 offer。其中一个我不感兴趣，其余两个很有吸引力，其中之一就是我目前的工作。</p><p>我并不是对找工作不上心，实际上我不知道自己的技能是否能够胜任开发相关工作：我会不会因为经验太少而被嘲笑？那段时间我很紧张，同时也很兴奋，充满希望。当我最终获得两份心仪的 offer 的时候，欣喜若狂，简直不敢相信。</p><p>我会永远感谢那些做出决定给我机会的人。</p><p>那两家公司的面试过程很不一样。其中一个是视频电话，我可以与公司里不同的人交谈。这是一家规模不大但是实力雄厚的公司，希望建立一个新的前端开发团队。经过几周的沟通，他们给了我一个不错的 offer。</p><p>另外一家是处于高速成长中的年轻初创公司。在一次电话面试之后，我收到了一项技术挑战，需要在几天之内完成。它包含构建组件、进行 API 调用以及显示正确的信息。然后视频聊天，讨论我写的代码。然后，技术团队邀请我一起聚餐，以便更了解我。之后，我拿到了 offer 。</p><p>最后我不得不从这两家之间做出选择，这是我不敢相信的。但是我知道自己想要的是什么，我接受了<a href="https://twitter.com/LolaMarket_tech" rel="nofollow">初创</a>公司的邀请。这家公司有一点比较吸引我：他们非常清楚导师的重要性，并给我提供成长和学习的指导。这点很关键，绝对是正确的选择。</p><p>就这样，在马德里的一个下雨天，我喝完咖啡之后走进了商务区的办公室，介绍自己是新来的开发人员，然后开启了新的职业生涯。</p><p>希望你喜欢我的故事。如果你能给本文点赞，我会非常高兴，你也可以分享文章，让更多的人来阅读，从中找到动力。我想继续写更多的此类文章，如果你想要知道更多以及哪方面的细节，请在 <a href="https://twitter.com/Syknapse" rel="nofollow">Twitter</a> 和我沟通吧。</p><p>原文：<a href="https://www.freecodecamp.org/news/how-i-switched-careers-and-got-a-developer-job-in-10-months-a-true-story-b8895e855a8b/">How I switched careers and got a developer job in 10 months: a true story</a>，作者：<a href="https://www.freecodecamp.org/news/author/syknapse/">Syk Houdeib</a></p> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ 自学编程 8 个月后，我拿到谷歌的软件工程师 offer ]]>
                </title>
                <description>
                    <![CDATA[ 找工作期间我曾拿到谷歌、网约车巨头 Lyft、最大的点评网站 Yelp、云计算独角兽 Rubrik、IBM 人工智能部门、摩根大通等公司的 offer。如果你正在找软件工程相关工作---特别是非计算机专业背景的人们——我希望我的故事可以激励你。 简介 你可能会想：怎么可能 8 个月就做到？ 在这篇文章中，我会详细介绍我的决策过程和思考过程，也会提供更多的阅读资料。  首先，我必须承认，很多因素赋予我很大优势：我是个白人，直男，本科就读于美国排名前 20 的高校，旧金山湾区工作的三年也让我积累了自己的人脉。 每个求职者的故事都不太一样，希望我的故事也能对你有所启发。 决定冒险 2018 年 7 月 29 日，我做了一个不理智的决定。 当时我面临着两个选择：一是去一家快速增长的广告技术公司担任办公室主任，二是参加编程训练营。办公室主任的薪水颇丰，发展稳定，似乎还是进入硅谷工作的快速通道，而编程训练营看起来代价又高、风险又大。 6 月 24 日，也就是做决定的 5 周前，我才用 JavaScript 写下了我的第一行代码，但也并没有成为一名工程师的打算。本科时，我读的是经济学专 ]]>
                </description>
                <link>https://www.freecodecamp.org/chinese/news/first-line-of-code-to-226k-job-offer-in-8-months/</link>
                <guid isPermaLink="false">5f56f15bcd07b005bfb5aec5</guid>
                
                    <category>
                        <![CDATA[ 自学编程 ]]>
                    </category>
                
                    <category>
                        <![CDATA[ 求职 ]]>
                    </category>
                
                    <category>
                        <![CDATA[ 面试 ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Miaomiao Ma ]]>
                </dc:creator>
                <pubDate>Tue, 08 Sep 2020 03:10:57 +0000</pubDate>
                <media:content url="https://chinese.freecodecamp.org/news/content/images/2020/09/Love-to-learn_tim-mossholder_unsplash.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>找工作期间我曾拿到谷歌、网约车巨头 Lyft、最大的点评网站 Yelp、云计算独角兽 Rubrik、IBM 人工智能部门、摩根大通等公司的 offer。如果你正在找软件工程相关工作---特别是非计算机专业背景的人们——我希望我的故事可以激励你。</p><h2 id="-">简介</h2><p>你可能会想：怎么可能 8 个月就做到？</p><p>在这篇文章中，我会详细介绍我的决策过程和思考过程，也会提供更多的阅读资料。 </p><p>首先，我必须承认，很多因素赋予我很大优势：我是个白人，直男，本科就读于美国排名前 20 的高校，旧金山湾区工作的三年也让我积累了自己的人脉。</p><p>每个求职者的故事都不太一样，希望我的故事也能对你有所启发。</p><h2 id="--1"><strong>决定冒险</strong></h2><p>2018 年 7 月 29 日，我做了一个不理智的决定。</p><p>当时我面临着两个选择：一是去一家快速增长的广告技术公司担任办公室主任，二是参加编程训练营。办公室主任的薪水颇丰，发展稳定，似乎还是进入硅谷工作的快速通道，而编程训练营看起来代价又高、风险又大。</p><p>6 月 24 日，也就是做决定的 5 周前，我才用 JavaScript 写下了我的第一行代码，但也并没有成为一名工程师的打算。本科时，我读的是经济学专业，过去三年在一家非营利机构做非技术管理咨询的工作。在湾区，有些职位要跟工程师一起工作，学代码只是因为我想让自己应聘这些职位时更有竞争力。</p><p>事实上，成为一名工程师像是天方夜谭。尽管我之前听说过许多人用一年时间通过编程训练营自学了编程，但我还是很难相信自己也可以达到同样水平。</p><p>据我了解，大多数工程师本科专业就是计算机科学，他们有着多年的工作经验，还会讲一门外语，我怎么能在这么短的时间内学会这么多东西呢？另外，要是我选择学习编程，我就要换行，为一个不确定的回报冒这么高的风险，值得吗？</p><p>办公室主任一职，则更像是梦想实现了：薪水比预想的要好，而且公司正在筹备不久后的收购计划，我将参与这一计划，几年后我也有望管理自己的部门。</p><p>但是，开始编程后，我就不想停下来。我热爱技术挑战，喜欢迎难而上。我还发现，<a href="https://dilbertblog.typepad.com/the_dilbert_blog/2007/07/career-advice.html">发展第二个专业技能</a>让我做足准备，准备开启一段不平凡的有影响力的职业生涯。</p><p>我内心里也有个声音在问：成为一名工程师会不会既能提升专业度，又能完成个人转型？如果我能学会编程，有什么是我学不会的呢？正是这种学习态度，支撑我坚持走完了整个旅程。</p><p>我选择了线上的编程课，连续三周每周编程时间不低于 40 个小时，之后我向 <a href="https://www.hackreactor.com/onsite-immersive">Hack Reactor</a> （被誉为“编程训练营中的哈佛”）提交申请，想试试看我是否能成为其中的一份子。侥幸通过测试后，同一周，我拿到了办公室主任的工作 offer。</p><p>思考了 72 个小时，我最后再次查看了自己的银行账户，算了算 Hack Reactor 项目结束后，我可以支付三个月的房租和生活开支。我想，三个月时间足够我找到工作了。</p><p>于是，我选择了编程训练营。</p><p>我给广告技术公司打电话拒绝了他们的 offer。挂断电话后我的情绪很复杂，一方面我很害怕：我可是为一个疯狂的决定放弃了一生仅一次的工作机会！另一方面我又激情满满：为了不让自己后悔，冒险前进吧！</p><p>没过多久，我的激情就消耗殆尽了。不过再没有回头路了：我已经踏上了冒险旅程。</p><h2 id="--2"><strong>学习编程</strong></h2><blockquote><strong>“你不必一开始就优秀，但你要开始变得优秀。”— Zig Ziglar，国际知名演说家、作家</strong></blockquote><p>Hack Reactor 和其他一些编程训练营都力求在三个月内完成传统大学计算机科学专业需要四年才能完成的教学任务，以让学员具备竞争一线软件工程工作的能力。</p><p>目标很宏大，所以得分秒必争。三个月的课程安排中，一周 6 天，一天上 12-14 小时的课，时间很紧，所以我们每天都要做大量任务。</p><p>每次收到任务时，我都会心里一惊：这根本不可能在截止期限内完成！我连从哪儿下手都没有头绪。但很神奇，每次到截止期限时，我总是能想出来或基本想出来一个解决方案。</p><p>经历足够的震惊与不可能之后，我开始感到一丝丝的激动：挑战看起来有多不可能，找到解决方案的时候就有多心满意足。</p><p>Hack Reactor 不仅仅教授编程知识，它还会教给我们<a href="https://en.wikipedia.org/wiki/Grit_(personality_trait)">咬紧牙关坚持的精神</a>，以及<a href="https://www.mindsetworks.com/science/">成长型思维</a>，过程十分令人激动。</p><p>我仍然怀疑自己是否能在存款用完之前找到工作，于是我养成了最好的学习和生活习惯。</p><p>充足的睡眠才能保证<a href="https://news.berkeley.edu/2011/03/08/sleep-brainwaves/">学习效率</a>，所以我规定了严格的睡眠时间。</p><p>为了缓解经常性压力，每隔一天我都会锻炼身体<a href="https://www.fastcompany.com/3025957/what-happens-to-our-brains-when-we-exercise-and-how-it-makes-us-happier">促进健康</a>、<a href="http://www.educationalneuroscience.org.uk/resources/neuromyth-or-neurofact/exercise-enhances-learning/">支持学习</a>。</p><p>为了提升记忆力，让每一天的学习都比前一天有进步，几乎每天晚上我都会复习核心课程，思考哪些事情做得比较好，哪些还不够好。</p><p>最重要的是，为了在一个如此紧张的安排中保持基本健康水平，每天早上上课之前我都会花一个小时来做<a href="https://ggia.berkeley.edu/practice/body_scan_meditation">禅修</a>和<a href="https://jackkornfield.com/meditation-lovingkindness/">慈爱冥想</a>。</p><p>有的人可能会对最后一个习惯感到惊讶，但是有充足的<a href="https://nccih.nih.gov/health/meditation/overview.htm">证据</a>表明“冥想能改善健康”，尤其是<a href="https://www.psychologytoday.com/us/blog/feeling-it/201409/18-science-backed-reasons-try-loving-kindness-meditation">慈爱冥想</a>。它帮助我保持对编程学习的好奇和愉悦，缓解了我面对编程学习挑战和工作的不确定性时的忧虑，对我来说十分有价值。</p><p>因为交通问题，我没有选择面对面授课。所以尽管我离校园步行只需十分钟，我仍然选择了网课。因为我上课无需通勤，吃饭方便，公寓环境十分安静，所以，我每天多出了 90 分钟不被打扰的<a href="https://medium.com/@dsilvestre/deep-work-by-cal-newport-lessons-305a375c41b8">深入学习时间</a>。</p><p>刚开始的 6 周，有两天是在未完成代码库的基础上，进行结对编程冲刺。两天时间里，我们重写了JavaScript <a href="https://underscorejs.org/">Undercore 库</a>，从零开始建立了基础数据结构，学习了面向对象编程和函数式编程，计算了时间和空间复杂度，构建了一个包含从客户端到服务器端到数据库的全栈应用。我们组有 24 人，每天视频会议时间不下 10 小时，逐渐成为朋友，可以互相开开玩笑。</p><p>学习了三周以后，我担心我可能不会通过中期考评，所以我<a href="https://www.creativityatwork.com/2003/01/10/art-of-possibility-ben-zander/">给未来的自己写了一封信</a>，告诉自己要想通过考评需要如何做。</p><p>我提到了我现有的生活和学习习惯，又增加了一些新的习惯，比如，如果没有能力在脑海里给一个虚构的小女孩（<a href="https://fs.blog/2012/04/feynman-technique/">费曼学习法</a>）解释核心代码，那就要复习这些我没有完全理解的代码，直到有能力给她解释为止。</p><p>3 周以后，在 24 小时内，我从零建立起了自己的第一个全栈应用，出色地通过了考评。大学教育十分重要，但这里的教育是另一种体验。</p><p>第二个 6 周里，有更多的自由形式小组项目。我从正向偏差中汲取灵感，追随着训练营营友的步伐，跟他们进行了交流。这些营友找的工作都十分成功。根据他们的指导建议，我设定了严格的 deadline 以应对巨大的技术挑战，在求职市场上挑选出最受欢迎的职业技能，例如能使用 Docker 和微服务系统工作，在不同的项目中扮演不同的角色。我还请一个营友对我进行了一次辅导，我用两天时间成功运行一项新性能，这位营友刚开始却花费了数周时间。</p><p>Hack Reactor 会从每支队伍的毕业营员中雇佣一些作为短期兼职助教，来支持全职员工的工作。毕业以后，我在这里担任了 6 周的助教，每周工作 35 个小时。工作内容包括：帮助制定课程安排、进行独立调研、基于调研结果帮助在找工作的营员、面试前来应聘的候选人等。</p><p>我跟训练营负责人商量只做 6 周的助教，而不是通常的 12 周。助教工作让我接触到了新的课程，同时也让我兼顾找工作和全职学习两件事，没有太多耽搁。非常感激能在助教工作中学习，助教工作确实进一步<a href="https://medium.com/accelerated-intelligence/memory-learning-breakthrough-it-turns-out-that-the-ancients-were-right-7bbd3090d9cc">加深了我自己的学习</a>，开出的薪水也足够我两个多月的开支，极大地缓解了我的压力。</p><h2 id="--3"><strong>求职旅程</strong></h2><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://chinese.freecodecamp.org/news/content/images/2020/09/image.png" class="kg-image" alt="image" width="1024" height="287" loading="lazy"><figcaption>给我工作 offer 的公司</figcaption></figure><p>12 月 7 日，距离我写下第一行代码已经过去了 165 天，我的 Hack Reactor 训练营也结束了，剩下的存款还够我承担 4 个月的房租和生活开支。训练营告诉学员要预留 6 个月的时间来找工作。倒计时正式开始！</p><p>即使困难重重，我还是想要放手试一试，所以我给自己制定了以下目标：</p><ul><li>拿到的薪酬在训练营排名要在前 25%，目标是年薪超过 12 万美金</li><li>工作尽可能具备最刺激的学习体验，希望职位既能让我充分发挥主观能动性，也有机会接触到行业大牛</li><li>工作团队和公司的文化以技术为重，同时要以人为本</li><li>工作要有趣也有意义</li><li>要做后端开发工作，至少要是全栈开发（大多数训练营毕业生都是从事前端开发工作）</li></ul><p>我从未设想过我的目标能全部实现。我知道找工作一定会像过山车一般跌宕起伏。</p><p>通过在 Hack Reactor 这段短时间的学习，我的基础并不扎实，但是在去一流公司面试之前，我还有几周时间可以全心学习。</p><p>而且，我可能会面对数不清的拒绝。尽管有调查显示，在面试中，<a href="https://triplebyte.com/blog/bootcamps-vs-college">训练营学员跟四年计算机专业科班出身的学生表现一样优秀</a>，大部分公司仍然不愿意聘用从编程训练营毕业的学员。软件工程面试中牵扯到的话题范围特别广泛，这也让我根本没办法面面俱到地准备。</p><p>等到求职之旅终于尘埃落定时，我总共申请了 44 家公司，其中 41 家是熟人帮忙介绍的，遇见了 14 次或编程挑战或技术电话面试，其中有 8 次进入了现场面试。截至 2019 年 2 月 15 日，我共收到了 7 个 offer。这距离我写下第一行代码，已经过去了 245 天。</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://chinese.freecodecamp.org/news/content/images/2020/09/image-1.png" class="kg-image" alt="image-1" width="1014" height="1024" loading="lazy"><figcaption>有 16% 的工作 offer 都是在我第一次写下代码 8 个月后拿到的</figcaption></figure><h2 id="--4">开始找工作，从失败中汲取教训</h2><blockquote><strong>“学习不是偶然获得的，必须保持热情，勤于钻研”—— </strong>Abigail Adams，美国第一夫人</blockquote><p>刚开始找工作的几周是最艰难的。12 月一整月，我只获得了几个编程测试机会，只拿到了 IBM 人工智能业务部的面试机会。</p><p>前两个编程测试的反馈就不如人意，我做的时候超时了，还被告知我的代码“准确性不够，性能也不够高”。</p><p>第三个编程测试有几个小时的时间，但我仍然心跳加速。我在时间结束前几秒完成了测试，却没来得及点击提交！</p><p>我告诉自己量变才能引起质变，现在我需要积累。每天早上一个小时的慈爱冥想结束后，我都会花一分钟提醒自己两件事：</p><ul><li>第一，目标确实给人方向。但如果只关注目标，在面对自己当前的水平和想要达到的目标之间的巨大差距时，我就会十分不满和沮丧。我要养成<a href="https://fs.blog/2017/06/habits-vs-goals/">不被目标束缚的习惯</a>。</li><li>第二，我认为，不管面试的是什么工作，经历的真正价值在于个人提升而非专业提升。我很幸运，能用几个月的时间全职学习如何学习，我现在也完全沉迷于此。</li></ul><p>我知道失败是成功之母，但前提是得认真对待失败。每次编程测试或者面试失败后，我都会反省，然后在我的文本编辑器里再次开始解决问题，直到完全解决。面试时的一个需要在 20 分钟内完成的任务，我在 3 天内花了 9 个小时来解决！</p><p>每解决一个问题，我都会记录下新概念和灵光一现的时刻，把它们看成是宝贵的<a href="https://fs.blog/mental-models/">思维模型</a>。我希望在面试时匹配到相应的模型。我会按照<a href="https://artofmemory.com/wiki/Spaced_Repetition_and_Recall">记忆重复间隔</a>定期回顾它们，以便形成长期记忆。</p><p>如果问题涉及新的编程句法结构，我会把问题按照时间紧急程度重做一遍，这样才能保证，面试再次碰到这些问题时轻松应对。</p><p>这些习惯不仅仅是增强了我的记忆力，还帮我建立了自信。我不知道在积蓄花完之前能否找到一份工作，但我知道哪怕是最令人失望的经历也在帮助我变得更好，这种感觉让我知足。</p><p>我的每日规划十分平稳，一周不少于 5 天，每天 8 小时：学习或者面试，总结失败或者成功经验，思考，重复。 面试中我可能会遇到诸如数据结构、算法、前端 DOM 操作、系统设计等等。按照这些可能，我不断地调整自己的学习计划以便面试时呈现最佳状态。之后我会预估接下来的面试遇到各种类型考题的可能性有多大，评估自己的面试表现，决定下一步的学习任务。</p><p>为了确保用到最好的学习资源，我按照主题分门别类，整理了其他学习者们推荐的各种资源，列成清单。需要学习这个主题时，我会再去谷歌快速搜索一下，看看有没有什么新的资源可以更新到清单上，然后找出最好的一到两个资源进行深入学习。前一天我会做好各项事件优先级排序，第二天就能确保，清晨冥想之后，进行 2-3 个小时的不被打扰的深入学习。</p><p>每天我还会花 2-3 个小时寻找目标公司，找出重点目标，然后投递简历。每次投递简历花费的时间比我预想的要多，而且可供我选择的一流公司的数量有限，因此，我尽所能通过以下方式提升我从投递简历到拿到面试机会的概率：</p><ul><li>简历中<a href="https://resumegenius.com/how-to-write-a-resume/accomplishments-on-resume-quantify-achievements">强调自己工作取得的成果或者采取的行动</a></li><li>研究邮件和领英哪个渠道和信息流能最快给我推荐相关公司</li><li>整个流程写在电子表格上随时回顾</li><li>跟进所有正在进行的沟通</li></ul><p>我几乎把所有投递简历的过程当做实验，希望投入时间带来的回报能不断提高。我的好习惯也帮了我很多——把已投递简历的公司写入表格意味着，在我被拒绝之后，我可以立即寻找下一个机会。</p><p>我也尽可能地安排好时间，首先面试一些不那么想去的公司，缓慢推进意愿度高的公司的面试进程，比如谷歌。 </p><p>IBM 的面试（包括一次电话面试和三次现场面试）是我坎坷求职之路上的转折点，给我上了一堂课，教会我如何处理不确定性。。</p><p>每次面试一开始，我都会经历那种现在无比熟悉的感觉，默默对自己说：我不知道怎么做。 但我每次都会深呼吸，提醒自己：在家里，从不知所措到想出解决方案都如此有趣，所以，在这里——挑战更大，工作触手可及——想出解决方案的那种感觉该会有多美妙！</p><p>前两次面试之后，我猜想也许我的热情和学习导向的态度是具有感染力的。面试官当然知道我并没有一开始就找到答案，但他们似乎很享受我在接近解决方案时话语间体现出的活力。</p><p>面试结束离开 IBM 的时候，我给自己加油打气：就算没有拿下这份工作，我也很享受压力下的思维提升。我坚信这种信念会帮助我找到工作。</p><p>幸运的是，12 月的失败浇灌了 1 月的成功之花。</p><h2 id="--5">良好势头和早期成果</h2><blockquote><strong>“最艰难的日子过后就是你人生的高光时刻，继续前进吧。” —— <strong>Roy T. Bennet</strong></strong></blockquote><p>在 1 月的第一周，IBM 打电话通知我被录用了，具体的正式录用细节会之后另行通知。“我可以利用一下这个 offer 吗？” 我问自己。随后我跟谷歌招聘人员分享了我拿到 IBM offer 的消息，他回复说让我跳过电话面试直接现场面试。</p><p>突然我就引起了招聘人员的关注。我立即跟所有我正在联系的公司说我已经拿到 IBM offer 的消息。新年伊始，整个找工作的节奏就这样被调动起来了。</p><p>第二周，去参加摩根大通的四场现场技术面试时，我第一次信心满满，甚至还提前完成了任务。12 月的辛苦付出终于有了收获，我欣喜若狂。</p><p>几天以后是谷歌面试，难度令人咋舌。第二场面试涉及到异步 JavaScript promise，我发挥得很差。</p><p>午饭休息时间，我在休息室里花了一点时间稍作休整，判断了一下形势觉得自己无望拿到 offer，我决定把目标调整成尽可能地从失败中多学经验。 我知道晚上回家后我要做个事后总结。但同时我也想挑战一下，看自己在如此高压环境下能保持几分镇定与平静。毕竟，面试谷歌多么令人激动。</p><p>这样的想法把我从慌乱状态中解救出来，下午的表现可圈可点。离开的时候，我甚至抱有一丝希望，觉得谷歌会给我 offer。</p><p>根据事后总结的习惯，回到家后我找到关于 JavaScript promise 的线上资源从零学起。第二天我又参加了三次电话面试，表现一般。</p><p>面试一家安全创业公司时，我表现很好；但面试一家小型能源创业公司时，我表现很差。电话面试 Rubrik——一家云存储独角兽公司——又给了我极大的信心。</p><p>Rubrik 的面试问题也是关于 promise，比前一天谷歌面试的还要难。但因为我前一天晚上的总结，现场创新，在面试结束之前刚刚完成。</p><p>面试官说我是他们面试的第一个编程训练营出身的人——他们之前只从名校招人——并且他们一点都不相信我从去年夏天才开始写代码。我开心得甚至在房间里跳了几步舞。</p><p>过了一周，摩根大通打电话给我，说要录用我，年薪 11 万美金，不包含股票和奖金。但我觉得我不太适应摩根大通的企业文化，而且这个薪资距离我 12 万年薪的目标还有差距。但因为这是我的第一个正式 offer，我还是特别激动，终于有人雇我写代码了！</p><p>我开始接到好多来自面试官、招聘人员和各个顾问的电话，结果仍然是有好有坏。谷歌打电话说面试结果仍不明朗，可以去招聘委员会询问；Uber 给了我面试机会；我觉得电话面试亚马逊时表现很好，但没有拿到面试机会；我觉得我搞砸了 Yelp 的电话面试，但却拿到了面试机会。</p><p>在一场场的面试中，我非常注意我面对招聘人员时的措辞。那家安全创业公司说他们担心没有办法给出像 IBM 和摩根大通一样的薪水，问我拿到的 offer 开出的薪水是多少。</p><p>我几乎都要上钩了，但我停下来想了想之前 Hack Reactor 训练营指导过的关于薪水问题的回答方式，于是我说，“其实我觉得不如这样，你告诉我打算开多少薪资，我看看在不在我的理想范围之内”，“当然可以，我们的薪资起薪是 12.5 万。”</p><p>12.5 万美元！这个数字超出了我的目标！</p><p>我望向别处来掩盖自己激动的心情，装作正在思考。然后我扭过头，镇定地说：“如果这样的话，我想我们可以进一步谈谈。”招聘人员说：“那好，只要还能谈我就放心了。”我也是，我在心里默默想到。</p><p>几天后我拿到正式 offer：年薪 12.5 万美元，外加每年当年市值的 6000 美元的股票期权。但是这些钱根本不重要，我特别中意公司的企业文化，职位也是非常有吸引力的后端开发，还有绝佳的指导机会。团队中 40 个工程师至少都有两年的工作经验，大部分都来自像麻省理工、斯坦福或者伯克利之类的顶尖名校。这些跟我憧憬的工作都十分契合！</p><p>但这一切，才刚刚开始。</p><h2 id="--6">跟公司谈判，做出最后决定</h2><blockquote><strong>“高效的谈判者会回顾对方所说的话，并挖掘对方深层的动机……他们拥有无穷的好奇心。”—— </strong>Chris Voss<strong>，</strong>国际危机谈判专家</blockquote><p>两天后 Rubrik 给我回了电话，我无比惊讶。我也将会是他们聘用的第一个从编程训练营毕业的员工。Rubrik 市值早已达到 33 亿美元，现在是一家炙手可热的新型独角兽公司。我可以和经验丰富的软件工程师共事，工作环境也让人心动。我回复招聘人员说要考虑一下，其实心里早已乐开了花：这么有竞争力的公司也想要我！挂断电话以后我仍然十分激动，差点忘记自己漏接了谷歌的电话。</p><p>我深呼吸几下，把电话回拨了过去。招聘人员倒是开门见山：“根据招聘委员会的通知，很开心地通知你被谷歌录用了，我们开出的薪酬是---”</p><p>我完全控制不住自己的尖叫声，蹦蹦跳跳进了厨房！天哪！谷歌！那家软件工程行业的标杆公司！他们的面试官是我整个面试经历中我遇见过的最严厉的！他们决定要我了！之后招聘人员告诉了我公司开出的薪酬，事情变得更加不真实了。年薪 16.3 万美元，包括：基础工资 12 万，奖金最低 1.8 万，每年公司股票 2.5 万，总共 16.3 万美元。</p><p>我心里想：你们疯了吗？毕竟我最近的报税单上的年薪只有 7.7 万美元。</p><p>我给自己放了一下午的假，想着应该没人看到，便在房子周围抑制不住兴奋地跳来跳去。我也给家人打了电话分享这个天大的好消息。</p><p>第二天上午，我又回归到辛苦学习当中。只不过这次不是学习算法，而是学习如何谈判。一夜之间，那些在面试过程中指导我的面试官成为了我在谈判中的对手。我觉得自己就像在狼群中求生存的一只羔羊——周围都是专家，几分钟的谈话之间就可能决定我的薪酬能不能多几千美元。</p><p>刚开始我很害怕，担心这样做会让自己显得比较贪婪，但 Hack Reactor 的教练态度特别坚定。她说这特别正常，谈判不仅仅是为了更高的薪酬。在谈判过程中，一个人有没有认真思考、是否自信都可以在谈判过程中得到显现。同时也会让老板对你刚进入公司时的工作有所期待。</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://camo.githubusercontent.com/887472c9bbceb40319125d002f26ebbba9ad2960/68747470733a2f2f6c68332e676f6f676c6575736572636f6e74656e742e636f6d2f67543641667977356a66356342366b346777467732317a6769596f4d362d48713636703734617545627045366f555a4a666e585554595434655f577465574b6f456663574450354c6239736e434e37794c595863676d5f4f32453139544c5f62586b2d4c4136434b38676c4b5a5f2d5466566e4765627658576d696268364d335939494167523046" class="kg-image" alt="68747470733a2f2f6c68332e676f6f676c6575736572636f6e74656e742e636f6d2f67543641667977356a66356342366b346777467732317a6769596f4d362d48713636703734617545627045366f555a4a666e585554595434655f577465574b6f456663574450354c6239736e434e37794c595863676d5f4f32453139544c5f62586b2d4c4136434b38676c4b5a5f2d5466566e4765627658576d696268364d335939494167523046" width="600" height="400" loading="lazy"><figcaption>我发现基本 90 %的工资上涨都是因为有我第一份工作开出薪酬的比较</figcaption></figure><p>接下来的几天，我都在跟招聘人员和顾问的电话沟通中度过，不断学习为谈判做准备，也在谈判后及时复盘吸取经验。我把希望在谈判中呈现出的内容写在了一页纸上，每次谈判过后也会反思哪部分进行得好，哪部分有待提升，就像我之前复盘面试失败教训一样。</p><p>我学着去爱上这个过程。每次谈判都会出现不同的令人着迷同时也令人困惑的问题，涉及层面多样，例如高水平策略方面——有关我分享信息的时间和方式，例如当下策略方面——我应该用什么样的语气沟通。能解决这么多的问题非常有趣。有时我能在一天中跟多个招聘人员聊天，每次电话沟通既能让我练习新学到的谈判技巧，同时也能让我重新积累教训。</p><p>读大学时我就读完了哈佛大学谈判项目的两部分：<em><em>Getting to the Yes</em> </em>和 <em><em>Getting Past the No</em></em>，对最佳替代方案（BATNA）和双赢解决方案之类的概念非常熟悉。但我还是从<em> </em>Chris Voss 的<em>《<em>Never Split the Difference</em>》</em>书中获得最多的灵感<em>。</em>拿到谷歌的 offer 以后我又把这本书读了一遍。 另外，我还阅读了 <a href="https://haseebq.com/farewell-app-academy-hello-airbnb-part-ii/">Haseeb Qureshi</a> 写的所有博客，他也是编程训练营出身，把赚来的钱捐给慈善事业。我也会时常跟训练营的职业教练沟通，在我之前，她有着成百上千的谈判指导经验。</p><p>Rubrik 刚开始薪酬报价是 16.3 万美元，跟谷歌不相上下。之后，Yelp 打电话过来，上演了剧情大逆转。他们把我申请的职位提升到一个非初级岗，然后给我开出了 16 万美元的年薪，另外还有 2 万美元的入职奖金——第一年总共 18 万美元。</p><p>18 万美元和非初级岗，怎么样？</p><p>我在 Yelp 面试中表现出了自己的最佳水平——在给定时间内完成了所有任务，为满足新的需求重新调整了代码使之无缝衔接，通过粗略计算评估了系统架构。面试官甚至都因此感到吃惊。但这些并不能改变我没有任何工作经验的事实。谷歌和 Rubrik 马上就回复说他们会调整薪水。</p><p>最终，找工作的最激动人心的部分来了。</p><p>Lyft 发邮件说要电话沟通。迄今为止，我的面试最好体验就来自 Lyft，但我觉得我的面试表现不能让我拿到他们的 offer。面试时我几乎是立马就想出了解决方案，但写的代码却始终没有运行出来。后来我又想出一个改进办法，但超时了没有提交成功。每天车轮般的谈判让我身心俱疲，所以我回复给 Lyft 的邮件如下：</p><p><em>“我现在在和好几家公司沟通。你介不介意用邮件直接通知我结果呢？我大概猜到我应该没有通过面试，但即便这样，我还是想从每次面试中获得一两句评价反馈，麻烦你了。非常感谢你百忙之中抽出空来对我进行指导。”</em></p><p>Lyft 的回复只有一行：“你通过面试了。”</p><p>什么？我通过面试了？我简直不敢相信，我以为已经没有希望的最中意的选择竟然兜兜转转回来了！第二天，我们谈定了薪酬：各项加起来总计年薪 21 万美元。</p><p>21 万美元！</p><p>想一想，这可是 Lyft！这是我朝思暮想可以工作的公司，工资什么的一点都不重要。几个在 Lyft 工作的朋友是我最喜欢的其中一部分人——很难说是因为他们善良还是聪明——我的面试官们似乎也如出一辙。</p><p>和 Lyft 确定薪酬后，我告知了每个正在沟通的公司，并且告诉他们我有最后一周的考虑时间，想鼓励他们给出最终确定薪酬。持续不断的谈判让我身心俱疲，我认为有截止期限在，可以大大减少每个公司在我身上投入的时间。Voss 也建议说，截止期限可以作为杀手锏使出。</p><p>谷歌给出了 18.9 万美元的薪酬，高于 Yelp 的报价，并且表示会根据 Lyft 的报价重新作出调整。Rubrik 同意电话沟通。Yelp 和那家安全创业公司表示不会继续沟通。我也不打算继续跟进摩根大通和 IBM。Uber，虽然给了我面试机会，却并没有给我发 offer。</p><p>Lyft 团队邀我共进午餐，我受宠若惊。不管是谷歌、Yelp 还是安全创业公司的团队都让人特别舒服，但是 Lyft 团队来了九个人跟我一起吃午饭，气氛十分融洽，饭桌上大家谈笑风生，好像我早就已经是团队中的一份子。他们说招我进公司是 2019 年公司的头等大事。一名高级工程师表示他十分乐意做我的导师。此时距离 Lyft 首次公开募股的日期，已经没有几个月了。</p><p>在 Lyft，我什么都有了：导师指导、快速成长的环境、以人为本的企业文化、令人激动的工作以及现在如此之高的薪酬。</p><p>Rubrik 没有及时给出薪酬报价。谷歌最后的报价是 23.3 万美元，如果算上 401K 养老保险制度和慈善机构项目就是 21.6万美元。因为我的目标就是想拿更高的薪酬，同时也能捐赠更多，并且这一年我将会捐出我税前收入的 25%，所以我觉得这一报价还可以。我也很赞同谷歌的企业文化，并且谷歌把中级工程师培养成一流天才专家的能力依然一流。</p><p>我在谷歌和 Lyft 之间摇摆不定，纠结了几天。慢慢地，我越来越觉得，抛开薪酬不谈，Lyft 绝对是我不能错过的机会。经过最后谈判，Lyft 的薪酬定在了 22.6 万美元，包括 13.5 万美元的基本工资，IPO 之前估价 7.1 万的股票，和 2 万美元的入职奖金。2 月 25 号，是周四，那时距离我写下我的第一行代码已经过去了 245 天，我接受了 Lyft 的 offer，为这一段求职旅程划上句点。</p><p>在 Lyft 工作的 6 个月，是我最开心的工作时光：团队互相扶持，工作内容吸引人，薪酬待遇也好。但是，就成为一名工程师而言，宝贵之处在于，我爱上了学习。既然我已经为学习痴迷，我就不打算与它分离。</p><h2 id="--7">找到一份软件工程师工作</h2><p>我把之前用来准备面试的资源列成了清单分享给有需要的人。同时我也会为求职者提供求职指导课程，参加课程的学员需要把自己未来收入的 10% 或者更多投入到高影响力的公益事业。</p><p><strong>点击<a href="http://www.swejobsearch.com/resources/">这里</a>获得资源清单和求职指导课程</strong>。</p><p>注意：希望我的私人生活可以跟作为求职教练的生活有所分割，因此我使用了笔名。</p><p>在这篇文章中，我给到了详尽的薪酬数目，有两个原因：一，我希望这些信息对于非科班出身的求职者有所帮助，因为他们之中大部分人对此了解甚少；二，详尽的<a href="https://www.nytimes.com/2018/08/31/smarter-living/pay-secrecy-national-labor-rights-act.html">薪酬数目</a>也有助于消除薪酬不平等现象，让每个人都能得到公平对待，尤其是<a href="https://leanin.org/equal-pay-data-about-the-gender-pay-gap">少数群体</a>。</p><p>反对薪酬不平等现象是 Lyft 一直以来的使命，同时也符合 Lyft 的企业文化。Lyft 在反对这一不平等方面投入了很多努力，每年都会进行三方薪酬股权审计。就在去年，Lyft 官方调查显示“<a href="https://www.forbes.com/sites/maggiemcgrath/2019/07/31/lyfts-2019-pay-equity-audit-has-a-surprising-result-its-male-and-female-employees-earn-the-same-thing/#56e6e0357a8d">不存在系统性薪酬差距</a>”，这家公司便成为了一家独特的独角兽公司。准确的薪酬信息在很多网站都可以找到，例如 <a href="https://www.paysa.com/salaries/software-engineer--t">paysa</a>，<a href="https://www.levels.fyi/">levels</a> 和 <a href="https://www.teamblind.com/search/software%20engineer%20lyft">blind</a>，我在文中分享的信息在这些平台都可以找到。</p><p>最后，很感谢在这段旅程中一直有很多人给予我支持，特别是求职教练兼谈判顾问 Lena Johnson 和技术导师 Robin Kim。再次衷心感谢大家！</p><p>原文：<a href="https://www.freecodecamp.org/news/first-line-of-code-to-226k-job-offer-in-8-months/">How I Went from Writing My First Line of Code to a $226K Job Offer in Just 8 Months</a>，作者：Jason Zedde</p> ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
