delphi5开发人员指南_建立开发人员职位的黄金指南

delphi5开发人员指南

Landing a software engineering position can be one of the most difficult obstacles that you can face. Each rejection can feel like a punch to the face.

获得软件工程职位可能是您面临的最困难的障碍之一。 每次拒绝都会给人以冲击。

This is why it’s important to keep a positive mentality while taking this journey. The company you end up working at can be the 3rd company you apply to or the 200th. Not every company will be looking for the exact skill set that you have to offer, but there is at least one company out there that is. It’s a numbers game. Every rejection is an opportunity to learn from your mistakes, which only increases your chances of finding that perfect match.

这就是为什么在旅途中保持积极的心态很重要的原因。 您最终所在的公司可以是您申请的第三家公司或第二百家公司。 并非每个公司都会寻找您必须提供的确切技能,但是那里至少有一家公司。 这是一个数字游戏。 每一次拒绝都是从错误中学习的机会,这只会增加找到完美匹配的机会。

My goal is to show you what areas to focus on when applying to jobs and how you can become a champion in each one.

我的目标是向您展示在申请工作时应重点关注的领域,以及如何成为每个领域冠军。

目录 (Table of Contents)

作品集 (Portfolio)

Your portfolio is the place where you’ll showcase your best work. It’s where you’ll prove that you can walk the walk. It’s comprised of your projects and your portfolio website.

您的作品集是展示最佳作品的地方。 您将在这里证明自己可以漫步。 它由您的项目投资组合网站组成

Note: I’ll be using “project” and “app” interchangeably.

注意:我将交替使用“项目”和“应用”。

专案 (Projects)

Companies want to see that you can apply your engineering skills to address an actual problem. Your app doesn’t have to be the next Khan Academy, but it should show that you can identify a problem and implement a way to solve it. To illustrate these points, I’ll talk about an app I built called Tangent.

公司希望看到您可以运用您的工程技能来解决实际问题。 您的应用不必一定是下一个可汗学院,但是它应该表明您可以识别问题实现解决问题的方法。 为了说明这些观点,我将讨论我构建的名为Tangent的应用程序。

Tangent is a mobile application for students to convert handwritten mathematical equations to beautifully typed digital text.

Tangent是一个移动应用程序,可让学生将手写的数学方程式转换为精美的数字文本

The first image below is an example of a handwritten math equation and the second is the digital text output. Students would then be able categorize these equations and save them for future studying.

下面的第一个图像是手写数学公式的示例,第二个图像是数字文本输出。 然后,学生将能够对这些方程式进行分类并将其保存以备将来学习。

Image for post

The Problem

问题

Tangent solves a clear problem. It targets the inefficiencies of taking handwritten notes and gives the user an easy way to store math problems.

切线解决了一个明确的问题。 它解决了手写笔记效率低下的问题,并为用户提供了一种存储数学问题的简便方法。

The Implementation

实施

Tangent uses the same technologies of the companies I was applying to. I was applying to primarily web developer positions, so it utilized JavaScript, Node.js and MongoDB.

Tangent使用与我申请的公司相同的技术。 我主要是在Web开发人员职位上申请的,因此它利用了JavaScript,Node.js和MongoDB。

And since I was applying to several educational technology companies, I made sure to use APIs and libraries that made sense. For instance, I used the Mathpix API and Khan Academy’s KaTeX library.

由于我向多家教育技术公司提出了申请,因此我确保使用了有意义的API和库。 例如,我使用了Mathpix API和可汗学院的KaTeX库。

The journey to a finished product can be pretty daunting, so I’ll go over some guidelines on how to ace the main steps of the process.

最终产品的旅程可能会令人生畏,因此,我将介绍一些有关如何实现流程主要步骤的指南。

The Process

流程

  1. Ideation

    构想

At the end of the day, you are trying to solve a problem. The more motivated and inspired you are about the problem, the more productive you’ll be. So, I recommend generating a list of problem domains that are personal to you. Try keeping a notebook and writing down anything that annoys you or you wish were different. What issues do you see as you go about your day? What obstacles do you see your closest friends/family face? Try doing this for around a week and you should find a few good starting points. After you find a problem, brainstorm ways an app could solve it.

归根结底,您正在尝试解决问题。 您对这个问题越有动力和启发,您就会越有效率。 因此,我建议您生成一份针对您个人的问题域列表。 尝试保留笔记本并写下任何使您烦恼或您希望与众不同的烦恼。 您一天的工作中会看到哪些问题? 您看到最亲密的朋友/家人时遇到什么障碍? 尝试进行大约一周的操作,您应该找到一些不错的起点。 发现问题后,请集思广益,确定应用程序可以解决问题的方式。

Your worst enemy during this process is maladaptive perfectionism. I remember pacing in my room for hours critiquing my ideas. Every time I came across a decent idea, I ended up scrapping it because of one issue or another. Perfectionism can be a huge roadblock during this process, so don’t be afraid to simply pick an idea from your list and stick with it.

在此过程中,您最大的敌人是适应不良的完美主义。 我记得我在房间里花了几个小时来打扰我的想法。 每当我遇到一个不错的主意时,我都会因为一个或另一个问题而放弃它。 完美主义在此过程中可能是一个巨大的障碍,因此不要害怕从清单中挑选一个想法并坚持下去

Now that you have identified a problem and how your app would solve it, it’s time to wireframe.

既然您已经确定了问题以及您的应用程序将如何解决该问题,现在该开始线框了

2. Wireframing

2.线框

Wireframing allows you to visualize how the user will use your app. Imagine yourself in the user’s shoes and outline the steps they would take in the app to reach a particular goal.

通过线框图,您可以可视化用户将如何使用您的应用程序。 想象一下自己在用户的鞋子上,并概述他们在应用程序中要实现特定目标所应采取的步骤。

With Tangent, the main goal was to convert handwritten equations to digital text. Here are the initial wireframes I used for that workflow.

使用Tangent,主要目的是将手写方程式转换为数字文本。 这是我用于该工作流程的初始线框。

Image for post

The more complex the app is, the more workflows you’ll need. Paper wireframes are a great way to flesh out all of your workflows quickly and easily. However, there are great tools to build more sophisticated wireframes like Marvel and InVision.

该应用程序越复杂,您将需要的工作流程越多。 纸线框是快速轻松地充实所有工作流程的好方法。 但是,有很多很棒的工具可以构建更复杂的线框,例如MarvelInVision

Now that you have your workflows drawn out, it’s time to break these down into user stories.

现在您已经制定了工作流程,是时候将其分解为用户案例了

2. Divide and Conquer with User Stories

2.划分和征服用户故事

User stories are how you make the jump from blueprint to code. They define the requirements of a specific feature in the app from the user’s perspective.

用户故事是您如何从蓝图过渡到代码。 他们从用户的角度定义应用程序中特定功能的要求

Let’s use Tangent as an example. One of the features is that a user can view all of their saved problems. When they look at the screen, they see the subject and category of each equation. Let’s convert this feature into a user story.

让我们以切线为例。 功能之一是用户可以查看所有已保存的问题。 当他们看着屏幕时,他们看到每个方程的主题和类别。 让我们将此功能转换为用户故事。

Title: As a user, I can see all of my saved problems in one place, so I can easily access them when needed.

标题:作为用户,我可以在一个地方看到所有保存的问题,因此我可以在需要时轻松访问它们。

Acceptance Criteria:

验收标准

  • User can see the problems in a scrollable list format

    用户可以滚动列表格式查看问题
  • Each problem should show the subject and topic

    每个问题都应显示主题和主题
  • When the user taps on any equation, they should be navigated to a detailed view of the problem

    当用户点击任何方程式时,应将其导航到问题的详细视图

As shown above, the main components of the user story are the title and the acceptance criteria.

如上所示,用户故事的主要组成部分是标题接受标准

The title is a short summary of the feature written from the user’s perspective. It’s helpful to format it like so:

title是从用户角度编写的功能的简短摘要。 像这样格式化它会很有帮助:

As a {end user}, I can {action}, so that I can {benefit}

作为{最终用户},我可以{行动},以便{受益}

The acceptance criteria is the set of requirements that must be completed to call the story done. As tempting as it may be: the acceptance criteria should not include implementation instructions. These user stories should be a description of what happens, not how it should be built.

接受标准是必须完成的一组条件才能调用已完成的故事。 可能很诱人:接受标准不应包括实施说明。 这些用户故事应该是对所发生情况描述,而不是应如何构建。

The above user story is somewhat complex. It’ll probably require calls to the backend in order to fetch all of the problems. It may even need pagination to improve the user experience.

上面的用户故事有些复杂。 为了获取所有问题,可能需要调用后端。 甚至可能需要分页来改善用户体验。

Not every story has to be this complex. Some may be simply adding a save button or changing the color of text in the app. Knowing the size of a story will help you determine your capacity, or how many stories you can take on at any point in time. Companies will sometimes use Fibonacci numbers to describe the size of a story. A “3” might be a small design change. A “13” may be a riskier feature that may not have an obvious implementation strategy. It’s important to keep your stories as small as possible. If you’re sizing at a “21”, you should consider breaking down the story into multiple smaller ones.

并非每个故事都必须如此复杂。 有些可能只是添加一个保存按钮或更改应用程序中文本的颜色。 了解故事大小将有助于您确定自己的能力或在任何时间点可以处理多少个故事。 公司有时会使用斐波那契数字来描述故事的大小。 “ 3”可能是一个很小的设计更改。 一个“ 13” 可能是一个风险较高的功能,可能没有明显的实施策略。 保持故事尽可能小很重要。 如果您将尺寸定为“ 21”,则应考虑将故事分解为多个较小的故事。

When working on smaller projects, I find it helpful to use T-shirt sizing. This involves sizing your stories as, small, medium or large. You can then assign a time duration for each size. Maybe small stories take 1–2 hours while large stories take a whole day to complete. This will vary depending on the type of app you’re building and your coding ability.

在处理较小的项目时,我发现使用T恤尺码会有所帮助。 这涉及将您的故事按大小,大小或大小排列。 然后,您可以为每种尺寸指定持续时间。 小故事可能需要1-2个小时,而大故事则需要一整天才能完成。 具体取决于您所构建的应用程序类型和编码能力。

These user stories are your source of truth and will make your development experience much smoother.

这些用户故事是您的真实来源,将使您的开发体验更加流畅。

Once you’ve finished your app, you can add it to your portfolio website!

完成应用程序后,可以将其添加到您的投资组合网站!

投资组合网站 (Portfolio Website)

Your portfolio website is your chance to show why you’re fit for that developer position. You’ll be able to utilize the visual potential that a website can provide in order to impress the recruiter/future employer in a way that a resume or LinkedIn profile simply cannot. I’ll breakdown the main components using my own portfolio website.

您的投资组合网站是您展示自己为何适合该开发人员职位的机会。 您将能够利用网站提供的视觉潜能,以简历或LinkedIn个人资料根本无法做到的方式打动招聘者/未来的雇主。 我将使用自己的投资组合网站细分主要组件。

  1. About Me

    关于我

This section should tell a brief story of who you are, your competencies, and what you hope to do with your career. Be as compelling as possible. Make sure to include these points below:

本节应简要介绍您是谁,您的能力以及您希望如何从事职业。 尽可能引人注目。 确保在下面包括以下几点:

  • Speak to your passions (interested in fintech, edtech, etc).

    谈谈您的激情(对金融科技,教育科技等感兴趣)。

  • Mention accomplishments you’re proud of so your abilities stand out!

    提及成就时,您引以为傲,因此您的能力脱颖而出!

  • Include links to your GitHub, LinkedIn and a PDF of your resume.

    包括指向GitHubLinkedIn的链接以及简历的PDF。

  • Brevity is the soul of wit. Constrain it to 4–5 sentences.

    精简是机智的灵魂。 将其限制为4–5个句子。

Here is my About Me section with the text pasted below it.

这是我的关于我部分,下面粘贴了文本。

Image for post

“As a software engineer who studied at MIT, my goal is to use technology to improve how society utilizes the tools of education and science for social progress.

“作为在麻省理工学院学习的软件工程师,我的目标是使用技术来改善社会如何利用教育和科学工具促进社会进步。

From founding a non-profit in the education sector to helping engineer software that allows anyone to view the microscopic world from their phones, my passion for technology brings me closer to that goal everyday.”

从在教育领域成立非营利组织到帮助工程师开发允许所有人使用手机查看微观世界的软件,我对技术的热情使我每天都更加接近这一目标。”

2. My Projects

2.我的项目

The My Projects section is the core of your portfolio site. It not only showcases the hard work you put into your apps, but the engineering skills you’d be bringing to the position. This section should include:

我的项目部分是投资组合网站的核心。 它不仅展示了您投入应用程序中的辛苦工作,还展示了您将带给自己的工程技能。 本节应包括:

  • A brief description of each app. If possible, include an image/logo.

    每个应用的简要说明。 如有可能,请附上图片/徽标。

  • The technologies and languages you used in each app.

    您在每个应用程序中使用的技术语言

  • Links to the live app. If this is not applicable, be sure to link the GitHub repository.

    链接到实时应用程序。 如果这不适用,请确保链接GitHub存储库。

Take a look at how I outlined my My Projects for reference.

看看我如何概述我的项目以供参考。

Image for post

3. My Education

3.我的教育

Be sure to include any relevant education experience. Include the following:

确保包括任何相关的教育经验。 包

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值