Product

At Plank, we’re committed to creating the next generation of engineers who are as obsessed with computer science as we are.

Product

sprint cycle

The Plank product lab consists of dedicated teams of full-stack engineers and devops engineers that work with innovative technology companies on their most difficult challenges.

Step 1
Review of User Requirements / Wireframes / Visual Design
  • Working with designers on user stories, user personas and acceptance criterion
  • Provide feedback to designers on wireframes
  • Give guidance on Visual Design to simplify future UI implementation
Figma,Sketch,Invision,Miro,Jira,Notion
Step 2
Backend design and implementation
  • Design data model schema
  • Implement database design based on data model
  • Implement REST or GraphQL API endpoints
  • Authentication & Authorization design
  • Generate API documentation
Typescript,NodeJS,NestJS,Python,PostgreSQL,MySQL,JWT authentication,2-factor auth,SAML,Auth0,Twilio
Step 3
Web UI design and implementation
  • Creating UI components corresponding to design
  • Connecting frontend state to backend API
  • Frontend state management and flow
  • View hierarchy design and implementation
Redux / Hooks,Storybooks
Step 4
Testing / Continuous integration setup
  • Unit tests with each PR
  • Integration / end to end tests covering both front-end and back-end
  • Automated performance tests
  • CI pipeline to automatically trigger test suite upon each commit
Jest,Enzyme,Mocha,Cypress,Selenium,React perf-tools,Gitlab-ci,CircleCI,Github Actions
Step 5
Continuous Deployment
  • Automated pipeline setup for PR deployment to dev, staging, production
  • Setup of alerting and monitoring
  • Version control and automated rollbacks
Github Actions,AWS Codedeploy,Gitlab-ci,Terraform,Cloudwatch,Datadog,PagerDuty,Sentry
Step 6
Sprint review and plan next sprint requirements
  • Demo of features completed in sprint
  • Sprint retrospective and review of actual vs estimated effort
  • Backlog review and planning of features for next sprint
Step 1
Application analysis
  • Create user stories and document various personas
  • Document pseudocode for various contract flows
  • Write acceptance criterion
Jira,Asana,Notion
Step 2
Preparing application for automation
  • Containerize the app
  • Consolidation of environment variables
  • Documenting application build, execute, test commands and steps
Docker,Docker compose,Github Actions,Gitlab CI,README
Step 3
Creating infrastructure as code for App
  • Design compute, storage, networking for the app
  • Finalize data flow and separation across the parts of the infra
  • Do pro/con analysis of services and make decision on configuration of each service
  • Model out the pricing based on projected usage
Terraform,Ansible,Docker,AWS Cloudformation
Step 4
Continuous deployment of application
  • Configuration of multiple environments
  • Sequential deployment across environments like dev, staging, pre-prod, production
  • Creation of liveliness and correctness probes across services used in the infrastruture
  • Scripting and configuration of automated deployment and triggering of deployment pipelines
  • Implementing rollback mechanisms
Github Actions,Gitlab CI,AWS CodeDeploy,Terraform vault,Ansible vault
Step 5
Testing and monitoring
  • Setup monitoring of all services to track application health metrics and product metrics
  • Setup alerting to detect anomalous application behavior
  • Create tools for disaster recovery from various scenarios
  • Build various admin dashboards, tools, scripts to allow easy management of infrastructure
Cloudwatch,Datadog,Snyk,Sumologic,Sentry,PagerDuty
Step 6
Sprint review and plan next sprint requirements
  • Demo of features completed in sprint
  • Sprint retrospective and review of actual vs estimated effort
  • Backlog review and planning of features for next sprint

Customer Showcase

Groups

Groups
Product

Groups.io is an email groups service that enables users to find and start groups, sync members, and archive conversations with hashtags.

Mon Ami

Mon Ami
Product

A modern operating system for aging & disability service providers. Mon Ami builds modern software solutions for aging and disability service providers across the country. Mon Ami is a women-founded, mission-driven startup tackling the senior services market to enable the delivery of life-sustaining services for older adults. They partner with agencies across the country who are at the frontlines of care, but who are currently not tech-enabled and are wasting 60% of their time on administrative paperwork that can be digitized and automated.

RhythmScience

RhythmScience
Product

RhythmScience provides cardiology software and services for comprehensive remote cardiac care. RhythmScience is a California-based software development company and Independent Diagnostic Testing Facility credentialed by Medicare. We created RhythmScience to solve the need of clinicians and doctors to manage the vast amounts of cardiac data created by implantable and wearable cardiac devices. RhythmScience is revolutionizing cardiac data by providing the building blocks for comprehensive remote cardiac care.

Caribou

Caribou
Product

Caribou sits at the intersection of two of the most arguably complex industries: healthcare and finance. Caribou is healthcare planning software for the financial service industry. Healthcare is complicated and represents one of the biggest threats to clients' financial goals. Caribou's healthcare planning software, HealthPlanner, exists to mitigate this risk. Caribou offers proactive healthcare planning software for financial advisors and wealth managers to enhance clients' financial plans and build stronger relationships with clients. Through custom HealthPlanning Analyses, you can plan for clients' current and future healthcare costs, thereby creating a holistic and accurate financial plan.

Product

articles

View all
Eras of Software: A Journey Through the Evolution of the Software Industry
The Tech and People Stack You Need for Your AI Startup
Why the ZIRP era ruined Software Architecture — and How we're finally fixing it
Axios Interceptors - When should you use them?
Six steps to learn about a specific APIs/Libraries and Frameworks with ChatGPT

Engineers we’ve worked with

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut morbi bibendum interdum sit. Tincidunt magna nisi, a amet sit enim dui accumsan. Phasellus in nunc gravida.

Ozan Zaimoglu

Product
Product
Ozan Zaimoglu

Bachelors in Computer Science from Bilkent University, Turkey

  • 5+ years of experience as senior full-stack engineer
  • Core developer for leading Silicon Valley transcription marketplace 

Serdar Onur

Product
Product
Serdar Onur

MS in Computer Science from Middle East Technical University, Turkey

  • 20 years of experience in multinational global projects as software engineer, lead engineer and tech lead
  • Experienced in web development, mobile development and Kubernetes
  • Developed mission critical systems for NATO
Fullstack Engineering

Fullstack Engineering

Accelerate your career in fullstack engineering by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world fullstack engineering projects.

Technology

  • Learn the basics of modern Javascript
  • Learn advanced React by following a planned course followed by a shared group project
  • How to develop full-stack applications using Nodejs and React
  • Effective use of REST APIs and GraphQL APIs
  • Learning techniques in modern CSS and styling, including writing code that works in a cross-device environment
  • Effective techniques in debugging frontend applications
  • Learning how micro-service and  micro-frontend architecture works in context of real-world applications
  • Learning how to use build tools like npm, yarn.

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
Devops

Devops

Accelerate your career in devops by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world devops projects.

Technology

  • Introduction to fundamentals of backend microservices and cloud technologies 
  • Introduction to basic AWS services and AWS console
  • Introduction to Terraform, Ansible, Docker
  • Learn about Kubernetes architecture and how to deploy applications in it
  • Creating CI / CD pipelines using Github, AWS, Vercel, Gitlab-ci
  • Introduction to Infrastructure as code
  • Configuring alerting, logging and monitoring systems
  • Learning advanced dev-security and net-security concepts

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
Mobile

Mobile

Accelerate your career in mobile development by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world mobile development projects.

Technology

  • Introduction to fundamentals of mobile programming with React Native, Swift, and Kotlin 
  • Introduction to basic React and React Native
  • Understanding Prototypes, Objects, Inheritence and Data Types in Javascript
  • Learning about ES modules and how to structure large applications
  • Using React Router DOM, Functional Components, State management, Context API, and React Hooks
  • Building and deploying applications in testflight and app store
  • Using test automation frameworks like Jest, Mocha, React Perf tools
  • Building generic applications with a mixed React Native and native Swift or Kotlin code

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
Fullstack Engineering

Fullstack Engineering

Accelerate your career in fullstack engineering by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world fullstack engineering projects.

Technology

  • Learn the basics of modern Javascript
  • Learn advanced React by following a planned course followed by a shared group project
  • How to develop full-stack applications using Nodejs and React
  • Effective use of REST APIs and GraphQL APIs
  • Learning techniques in modern CSS and styling, including writing code that works in a cross-device environment
  • Effective techniques in debugging frontend applications
  • Learning how micro-service and  micro-frontend architecture works in context of real-world applications
  • Learning how to use build tools like npm, yarn.

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
Devops

Devops

Accelerate your career in devops by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world devops projects.

Technology

  • Introduction to fundamentals of backend microservices and cloud technologies 
  • Introduction to basic AWS services and AWS console
  • Introduction to Terraform, Ansible, Docker
  • Learn about Kubernetes architecture and how to deploy applications in it
  • Creating CI / CD pipelines using Github, AWS, Vercel, Gitlab-ci
  • Introduction to Infrastructure as code
  • Configuring alerting, logging and monitoring systems
  • Learning advanced dev-security and net-security concepts

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
Mobile

Mobile

Accelerate your career in mobile development by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world mobile development projects.

Technology

  • Introduction to fundamentals of mobile programming with React Native, Swift, and Kotlin 
  • Introduction to basic React and React Native
  • Understanding Prototypes, Objects, Inheritence and Data Types in Javascript
  • Learning about ES modules and how to structure large applications
  • Using React Router DOM, Functional Components, State management, Context API, and React Hooks
  • Building and deploying applications in testflight and app store
  • Using test automation frameworks like Jest, Mocha, React Perf tools
  • Building generic applications with a mixed React Native and native Swift or Kotlin code

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
Fullstack Engineering

Fullstack Engineering

Accelerate your career in fullstack engineering by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world fullstack engineering projects.

Technology

  • Learn the basics of modern Javascript
  • Learn advanced React by following a planned course followed by a shared group project
  • How to develop full-stack applications using Nodejs and React
  • Effective use of REST APIs and GraphQL APIs
  • Learning techniques in modern CSS and styling, including writing code that works in a cross-device environment
  • Effective techniques in debugging frontend applications
  • Learning how micro-service and  micro-frontend architecture works in context of real-world applications
  • Learning how to use build tools like npm, yarn.

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
Devops

Devops

Accelerate your career in devops by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world devops projects.

Technology

  • Introduction to fundamentals of backend microservices and cloud technologies 
  • Introduction to basic AWS services and AWS console
  • Introduction to Terraform, Ansible, Docker
  • Learn about Kubernetes architecture and how to deploy applications in it
  • Creating CI / CD pipelines using Github, AWS, Vercel, Gitlab-ci
  • Introduction to Infrastructure as code
  • Configuring alerting, logging and monitoring systems
  • Learning advanced dev-security and net-security concepts

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
Mobile

Mobile

Accelerate your career in mobile development by building a strong foundation in cutting-edge technologies in the field, learning software development best practices, and working closely with senior engineers on real world mobile development projects.

Technology

  • Introduction to fundamentals of mobile programming with React Native, Swift, and Kotlin 
  • Introduction to basic React and React Native
  • Understanding Prototypes, Objects, Inheritence and Data Types in Javascript
  • Learning about ES modules and how to structure large applications
  • Using React Router DOM, Functional Components, State management, Context API, and React Hooks
  • Building and deploying applications in testflight and app store
  • Using test automation frameworks like Jest, Mocha, React Perf tools
  • Building generic applications with a mixed React Native and native Swift or Kotlin code

Project Management & Tools

  • Learn about different software methodologies like scrum, kanban
  • Learn about how to create a roadmap for a product milestone
  • Learn how to use different project management tools like Jira, Slack, Github, Notion etc.
  • Learn how to structure your communication to convey ideas clearly
  • Understand how collaboration happens in a modern distributed software development organization
  • How to use version control effectively and learn methodologies like git-flow
  • Learning test driven development
  • How to setup and use continuous integration for keeping high code quality
  • Best practices in testing across unit tests, performance tests, security tests, end to end tests, behavior driven testing, cross device testing
  • Best practices in deploying code across multiple environments
  • Best practices in setting up alerting and monitoring for production applications
  • Techniques in debugging code in development and production
React
Typescript
Node.js
React
Typescript
Node.js
Fullstack Engineering
Devops
Mobile
Fullstack Engineering
Devops
Mobile
React
Typescript
Node.js
NestJS
React Native
Javascript
React
Typescript
Node.js
NestJS
React Native
Javascript