Jumping into Dev at a Software Enterprise
As an experienced developer who now guides others on their journeys, I understand that getting started can be intimidating. Even for seasoned professionals, the process can sometimes feel complex and confusing.
Therefore, I've compiled this guide to make the process less overwhelming and more enjoyable. The guide is informal, engaging, and designed to be as relatable as possible. Whether you're a beginner or a veteran, we all could use a friendly push in the right direction.
Greenfield
For those embarking on a new project, this section will guide you through setting up your cloud environment, creating your development pipeline, and initiating the development process.
- Cloud Blueprinting: Define cloud topology and resources - akin to designing your MVP's dream home.
- Pipeline and Tooling Setup: Establish your version of pipeline-as-code and configure tooling workers - similar to setting up your app's production assembly line.
- Repo Setup & CI Sprints: Configure repositories and Continuous Integration (CI) - essentially your backstage access to code quality.
- API Design and Management: Understand RESTful API design principles and utilize API management tools - like creating a communication bridge between your app and its users.
- Shift Security Left: Incorporate security practices into your DevOps workflow - making security an integral part of the journey rather than an afterthought.
- The Iteration Station: Add features incrementally to your app - focusing on continuous evolution.
- Layer 7 Love: Explore edge caching, firewall models, WAF tweaks - enhancing app performance and security.
- Float like a Butterfly: Deploy statelessly - ensuring scalability by reducing unnecessary load.
- Automation Nation: Automate CD, end-to-end tests - promoting efficiency in your workflow!
- Happy Paths & Vigilance: Monitor performance along the happy path - maintaining consistent progress!
- Scale 'n' Sail: Scale your app, set up alerts - preparing for growth!
Established
For those working on an existing project and looking to improve its features, performance, or security, this section offers a roadmap for effective contributions and swift customer value delivery.
- Cloud Mapping: Visualize the cloud layout - understanding your operational landscape.
- Repo Recon & Contributor Connect: Identify repositories and key contributors - knowing your team's structure.
- App Inventory & Config Check: Understand where your applications are running - conducting an app roll call.
- Alpha Env Creation: Ensure environment replication - akin to rehearsing before the main event.
- Feature Factory & Compute Crunching: Develop features, leverage compute power - following a cycle of isolation, development, merging.
- DevInt Delivery: Contribute/deploy to DevInt using CD - fostering teamwork in shared environments!
- Performance Optimization: Monitor and enhance your application's performance - making your app operate seamlessly.
- Security Audits: Conduct regular security audits to safeguard your application from potential threats - like appointing a security guard for your app.
- Fast Tracks to Customers: Deliver swiftly to customers - because timeliness is crucial!
- DR and Business Continuity Planning: Prepare for system failures or disruptions - essentially setting up a safety net for your app.
Advanced
For veteran developers seeking to deepen their skills and knowledge, this section delves into advanced topics such as containerization, microservices, serverless computing, and sustainable coding practices.
- Vault Secrets: Store secrets in vaults - every app has its secrets.
- Config Repo Solitude: Isolate config repositories - giving them dedicated space.
- Containerization Conquests: Master Docker and Kubernetes for application development, shipment, and execution - stepping into the future!
- Microservices Mastery: Design, develop and deploy microservices - like managing a mini army.
- Serverless Savvy: Understand serverless computing and build serverless applications - challenging traditional norms!
- Data Management: Understand different database systems (SQL, NoSQL), and manage, store, and retrieve data efficiently - akin to organizing your app's library.
- Compliance Crusade: Navigate the compliance landscape - ensuring adherence to rules.
- Sustainable Coding Practices: Learn sustainable coding practices to minimize your code's environmental impact - promoting responsible coding.
This guide aims to be a useful resource on your development journey, whether you're just beginning or already an expert. Remember, every expert started as a beginner. Happy coding!