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

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.

RecruitBot

RecruitBot
Product

RecruitBot is an all-in-one recruiting tool for hard-to-fill roles. We use AI-based candidate matching and powerful search to identify candidates from a database of 640 Million, which would normally require you to visit many different sites. From there, send personalized but automated communication to verified email and phone numbers, and review powerful analytics to optimize outreach performance and user activity.

Lead

Lead
Product

Lead specializes in elevating employee engagement and driving performance through our innovative, cloud-based platform. Designed to seamlessly integrate with key communication tools like Slack and Microsoft Teams, lead’s solution bridges the gap in remote workforce connectivity, fostering a culture of collaboration and belonging. Lead platform offers a comprehensive suite of features, including virtual coffee meetups, peer mentorship, buddy programs, DEI discussions, and more. These tools are designed not just to connect team members but also to nurture a positive workplace culture and enhance team collaboration. In addition to facilitating connections, LEAD.bot provides valuable tools like pulse surveys, streamlined new hire onboarding processes, birthday celebrations, and engaging watercooler chats with an AI-powered topics builder. These features collectively work towards boosting engagement, promoting a healthy workplace culture, and fostering team collaboration. Trusted by over a thousand organizations, LEAD.bot has established itself as a reliable solution for enhancing workplace dynamics, making it an ideal choice for companies looking to create an environment where employees can thrive and succeed.

OpenVPN

OpenVPN
Product

OpenVPN® solutions help organizations to easily create secure, virtualized, reliable networks that ensure secure communications between on-premise applications, SaaS applications, a remote workforce, business partners, IoT/IIoT devices, and specialized global applications. We offer two secure networking solutions for small, medium, and enterprise businesses. CloudConnexa™, our managed solution, provides secure communication between an organization's distributed workforce, loT/IoT devices, and the online services they rely on daily with a secure virtualized network. Access Server, our self-hosted solution, simplifies the rapid deployment of a secure remote access solution with a web-based graphic user interface and built-in OpenVPN Connect Client installer. Both allow you to secure your business at scale and provide a seamless experience for your team — no matter the size. OpenVPN is recognized as a market-proven leader in virtual private networking by Fortune 500 companies and small businesses alike across the globe. With more than 60 million downloads of the core open-source software and over 20,000 commercial customers, OpenVPN is changing the way the world thinks about online security.

Product

articles

View all
Why the ZIRP era ruined Software Architecture — and How we're finally fixing it
The Tech and People Stack You Need for Your AI Startup
Eras of Software: A Journey Through the Evolution of the Software Industry
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
Python
React.js
Node.js
Python
React.js
Node.js
Fullstack Engineering
Devops
Mobile
Fullstack Engineering
Devops
Mobile
Python
React.js
Node.js
NestJS
React Native
Javascript
Python
React.js
Node.js
NestJS
React Native
Javascript