![采用无服务器Firebase的图像:移动和Web应用程序易于发布](http://assets.toptal.io/images?url=http%3A%2F%2Fbs-uploads.toptal.io%2Fblackfish-uploads%2Fcomponents%2Fblog_post_page%2Fcontent%2Fcover_image_file%2Fcover_image%2F1310228%2Fimage_0__55_-cb858e55f9bb096c916415c67d53c544-43846ba5aaff2fa725c29109fff00985.png&width=768)
![菲利普·爱德华兹,法国马赛的开发商](http://assets.toptal.io/images?url=http%3A%2F%2Fbs-uploads.toptal.io%2Fblackfish-uploads%2Ftalent%2Fprofile%2Fpicture_file%2Fpicture%2F1072862%2Fhuge_f5dcdbd348bc55e33f603c1d07e95468-f11139b71a5cbdd900ab35dd3e2b2786.jpg&width=524)
Phillip Edwards
Verified Expert in Engineering
Technical Writing Developer
Phillip在软件开发生命周期的各个方面都有多年的经验, 在解决问题方面有特别的专长, coaching, training, 以及DevOps和敏捷哲学. He advocates Agile, test-driven development, the DevOps culture, 并指导了一些开发人员和测试人员采用DevOps方法. Phillip一直在使用谷歌Firebase开发应用程序,并将应用程序从AWS和Heroku转移到GCP.
Portfolio
Experience
Availability
Preferred Environment
Go, Python 3,谷歌云平台(GCP), Kubernetes, Docker, Java, MacOS, Linux, Bash, GitHub
The most amazing...
...我做过的一件事就是用Java和Go语言编写软件,使用NASA的数据来预测天文事件, 包括日出和日落时间.
Work Experience
DevOps Engineer
Reward Gateway, Limited
- 在Docker容器中部署现有的PHP应用程序.
- 使用SSH设置和配置CentOS虚拟机.
- 使用通过NGINX代理路由的Docker秘密在Docker Swarm中部署应用程序.
- 使用Logstash、OpenSearch和Kibana实现全局日志记录.
- 使用New Relic实现应用程序和基础设施监控.
Okta | IAM Expert
BCG
- 编写Okta认证和IAM使用的培训材料.
- 开发了使用命令行界面创建Okta资源的概念验证(POC).
- 创建了计时和记录OAuth 2的软件.0 login times.
- 用Python 3编写工具,使用Okta API自动创建Okta应用程序. 这极大地提高了团队的生产力,减少了他们对支持团队的依赖.
- 在Python中实现了HashiCorp Vault, 1Password和谷歌secrets Manager的秘密管理.
Technical Writer
Okta
- 开发了一个应用程序,并写了一篇关于Python Tornado框架的文章.
- 构建了一个应用程序,并写了一篇关于Go and Gin的文章,通过身份验证对其进行保护.
- 用Python和Go构建Elasticsearch应用程序,并撰写相关文章.
- 在GCP上创建和实现无服务器容器, Azure, 和AWS,并写了一篇文章来比较这两种云.
- 使用Terraform实现了HCL来部署应用程序,并写了一篇关于实现的文章.
DevOps Engineer
Aragon
- 通过创建单独的GCP项目和Kubernetes集群,将生产环境与测试环境分离.
- 使用Helm图表简化现有的Kubernetes部署.
- 协助开发人员在GCP Kubernetes集群中部署应用程序.
高级站点可靠性工程师(SRE)
ClickFunnels
- 将四个Heroku和AWS云应用程序移植到谷歌云平台.
- 协助三个开发团队将他们的应用程序移植到GCP.
- 创建Docker构建以容器化遗留应用程序.
- 使用Helm和CircleCI在GKE中部署应用程序.
- 在GCP/GKE中创建Kubernetes集群,并配置IAM权限.
- 使用静态IP地址配置Kubernetes入口,并创建DNS表项. 还配置了负载平衡器来处理HTTPS流量.
Solutions Architect
Dito
- 开发SDLC研讨会,将开发团队迁移到敏捷和Scrum.
- 创建了一个关于使用谷歌Firebase进行无服务器移动开发的研讨会.
- 使用Go和Go模板增强了一个REST应用程序.
- 使用Python和Flask构建了一个REST后端来访问谷歌api.
- 使用Open API规范设计REST API以访问谷歌API.
- 制作网络研讨会,在谷歌云平台(GCP)上推广Firebase和Kubernetes解决方案.
- 开发并支持运行在GCP上的应用程序.
DevOps Coach
BNP Paribas Fortis
- 说服团队采用新技术和DevOps实践.
- 在Java中运行测试驱动开发(TDD)技巧会话.
- 协助团队创建Jenkins管道,以构建、测试和部署他们的代码到云中.
- 领导契约优先的研讨会,设计REST api和构建存根服务.
- 举办关于如何安全地重构遗留Java代码的研讨会.
- 作为工程和运营协会的领导,管理技术教练.
Senior Java Developer
Egencia
- 为遗留系统设计了基于云的替代品.
- 用Java实现后端系统组件,并将其部署到云中.
- 为开发团队执行同级代码审查.
- 使用Jenkins和Marathon将系统组件部署到AWS云中.
- 指导同事实现微服务.
Trainer | Coach
Self-employed
- 开发和提供一系列科目的培训项目, including Java and Python, to several companies.
- 为空中客车公司创建了Kubernetes课程, 使他们能够在几个月内将成像应用程序从数据中心迁移到谷歌云平台(GCP).
- 举办了一些关于Apache Camel的研讨会.
- 创建了关于如何有效使用测试驱动开发(TDD)的研讨会.
- 开发并展示了一个DevOps课程.
技术主题专家|培训师
Royal Bank of Scotland
- 与主题专家一起设计培训计划,使新开发人员准备就绪.
- 撰写和审阅由主题专家定义的课程模块.
- 用Java和SQL为课堂研讨会构建课程软件.
- 在印度为一群软件开发人员指导课程试点.
- 在伦敦和印度讲授或合作讲授所有课程.
Senior Developer
Kantar Media
- 将关键的电视观看数字应用程序从AIX移植到Linux.
- 用PL/SQL存储过程替换旧的Cobol组件.
- 提高了隔夜批处理性能,将处理时间从4小时减少到1小时.
- 改进了没有文档的遗留代码的单元测试覆盖率.
- 用Java和Apache CXF实现了一个web服务应用程序.
Experience
Taking Firebase Serverless
http://qytzbt.zhciq.net/google/firebase-serverless-mobile-and-web-appsPandoc和Docker出版链
http://qytzbt.zhciq.net/docker/pandoc-docker-publication-chainFirst of all, data files; I purchased a NAS, which has RAID backup, 大多数文件也在Github的云端. 简单地用NFS挂载NBAS驱动器意味着多台机器可以访问它们, 并且不需要将文件复制到NAS以外的文件.
安装和更新软件总是很棘手. 如果存在依赖关系,这一点尤其正确. 一个解决方案是在Docker镜像中运行软件. 我决定采用这种方法. 复杂的Docker run命令可以包装在别名、函数或脚本中.
另一个问题是文档. 文档通常需要多种格式,包括HTML、PDF和专有格式. 另一个问题是文档理想地采用文本格式进行版本控制. There is an ideal solution. Markdown是一种常用的文档格式. Pandoc软件可以很容易地将markdown转换为其他格式, 消除了对同一文档的多个副本的需要.
天文预测与模拟
http://dr-phill-edwards.eu/目前大多数文献都是基于无法解释的近似. Still, 我找到了NASA喷气推进实验室的星历数据, 它可以精确地计算太阳的位置, moon, 以及1550到2550年间的行星.
该应用程序目前正在用Go语言重写.
Skills
Languages
Java, C++, Bash Script, Python, Go, Java 8, SQL, Python 3, PHP, Bash, C, Swift 5, JavaScript 6, Swift, JavaScript, PHP 7, TypeScript, C#, UML 2
Frameworks
Spring Boot, Spring, Marathon, OAuth
Libraries/APIs
REST APIs
Tools
Apache, Kubernetes引擎(GKE), Shell, Jenkins, Apache Maven, GitHub, Terraform, Eclipse IDE, Docker Compose, Git, SonarQube, Helm, HashiCorp, Jira, NGINX, RabbitMQ, CircleCI, Confluence, Systemd, GitLab CI/CD, Ansible, Amazon EKS, Puppet, Keycloak, Mesos, Auth0, CAD, Amazon弹性容器服务(Amazon ECS), Traefik
Paradigms
Continuous Integration (CI), Microservices, Agile, REST, 面向服务的架构(SOA), DevOps, 测试驱动开发(TDD), DevSecOps, Serverless Architecture, Unit Testing, Continuous Deployment, Continuous Delivery (CD), XP
Platforms
Apache2, MacOS, Eclipse, Firebase, Kubernetes, Docker, Linux, Google Cloud Platform (GCP), Amazon Web Services (AWS), Android, iOS, Oracle, AWS Lambda, Amazon EC2, Amazon, Azure
Storage
PL/SQL, Google Cloud, Google Cloud SQL, MySQL, Oracle 11g, NoSQL, PostgreSQL, Elasticsearch, Amazon S3 (AWS S3)
Industry Expertise
Security, Network Security
Other
Cloud, Cloud Architecture, 站点可靠性工程(SRE), Scripting, Architecture, Okta, Cloud Platforms, Mathematics, TCP/IP, Shell Scripting, Identity & Access Management (IAM), System Administration, Technical Writing, CI/CD Pipelines, Science, Information Technology, Technical Documentation, APIs, Training, Technical Writer, Networking, SSH, Firewalls, Linux Administration, Networks, Writing & Editing, Technical Hiring, Source Code Review, Task Analysis, Containerization, Consulting, Mentorship, Container Orchestration, Cryptography, Encryption, DevOps Engineer, Agile DevOps, Web Security, Google Cloud Functions, Firebase Cloud Functions, Virtualization, Cloud Computing, Interviewing, High-availability Systems, 基础设施即代码(IaC), Cloud Security, Cloudflare, Tornado, 计算机辅助制造(CAM), English, SOC 2, Amazon RDS
Education
计算机辅助设计与制造博士学位
诺丁汉大学-英国诺丁汉
理学学士学位,主修数学
曼彻斯特大学-曼彻斯特,英国
Certifications
TEFL Certification
TEFL Scotland
UML专业基础
OMG |对象管理组