Patrick Mugabe

521 posts

Patrick Mugabe banner
Patrick Mugabe

Patrick Mugabe

@patmuga

Systems Integration Architect | MuleSoft Delivery Champion. Passionate about API strategy, innovation, knowledge management & mentoring. Love coffee & golf.

Brisbane, Queensland Katılım Eylül 2010
545 Takip Edilen210 Takipçiler
Patrick Mugabe retweetledi
Alex Xu
Alex Xu@alexxubyte·
How does VISA work when we 𝐬𝐰𝐢𝐩𝐞 𝐚 𝐜𝐫𝐞𝐝𝐢𝐭 𝐜𝐚𝐫𝐝 at a merchant’s shop?
Alex Xu tweet media
English
16
871
4.3K
448.7K
Patrick Mugabe retweetledi
Tendayi Viki
Tendayi Viki@tendayiviki·
When it comes to innovation, do the hard things first. Don't invest all your time on the fun events and activities. At some point, you will have to account for the value you are creating for your company. This is when the fun stops. buff.ly/4aPKw9a #piratesinthenavy
Tendayi Viki tweet media
English
0
1
7
394
Patrick Mugabe retweetledi
Alex Xu
Alex Xu@alexxubyte·
Have you heard of the 12-Factor App? The "12 Factor App" offers a set of best practices for building modern software applications. Following these 12 principles can help developers and teams in building reliable, scalable, and manageable applications. Here's a brief overview of each principle: 1. Codebase: Have one place to keep all your code, and manage it using version control like Git. 2. Dependencies: List all the things your app needs to work properly, and make sure they're easy to install. 3. Config: Keep important settings like database credentials separate from your code, so you can change them without rewriting code. 4. Backing Services: Use other services (like databases or payment processors) as separate components that your app connects to. 5. Build, Release, Run: Make a clear distinction between preparing your app, releasing it, and running it in production. 6. Processes: Design your app so that each part doesn't rely on a specific computer or memory. It's like making LEGO blocks that fit together. 7. Port Binding: Let your app be accessible through a network port, and make sure it doesn't store critical information on a single computer. 8. Concurrency: Make your app able to handle more work by adding more copies of the same thing, like hiring more workers for a busy restaurant. 9. Disposability: Your app should start quickly and shut down gracefully, like turning off a light switch instead of yanking out the power cord. 10. Dev/Prod Parity: Ensure that what you use for developing your app is very similar to what you use in production, to avoid surprises. 11. Logs: Keep a record of what happens in your app so you can understand and fix issues, like a diary for your software. 12. Admin Processes: Run special tasks separately from your app, like doing maintenance work in a workshop instead of on the factory floor. Over to you: Where do you think these principles can have the most impact in improving software development practices? -- Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): bit.ly/3KCnWXq
GIF
English
12
371
1.3K
83.2K
Patrick Mugabe retweetledi
Alex Xu
Alex Xu@alexxubyte·
How do companies ship code to production? The method to download the high-resolution PDF is available at the end. The diagram below illustrates the typical workflow. Step 1: The process starts with a product owner creating user stories based on requirements. Step 2: The dev team picks up the user stories from the backlog and puts them into a sprint for a two-week dev cycle. Step 3: The developers commit source code into the code repository Git. Step 4: A build is triggered in Jenkins. The source code must pass unit tests, code coverage threshold, and gates in SonarQube. Step 5: Once the build is successful, the build is stored in artifactory. Then the build is deployed into the dev environment. Step 6: There might be multiple dev teams working on different features. The features need to be tested independently, so they are deployed to QA1 and QA2. Step 7: The QA team picks up the new QA environments and performs QA testing, regression testing, and performance testing. Steps 8: Once the QA builds pass the QA team’s verification, they are deployed to the UAT environment, where the QA team, dev team, and even the product owner perform UAT testing. Step 9: If the UAT testing is successful, the builds become release candidates and will be deployed to the production environment on schedule. Here we might not want to deploy to all the users in one go to mitigate the change risks, so some techniques like feature toggle, canary deployment can be used. Step 10: SRE (Site Reliability Engineering) team is responsible for prod monitoring. They leverage a bunch of log-analyzing tools and process-tracing tools like ELK stack, Prometheus, and Skywalking. They report production issues to QA and dev teams, and teams need to fix them based on defined priority. – Subscribe to our newsletter to download the 𝐡𝐢𝐠𝐡-𝐫𝐞𝐬𝐨𝐥𝐮𝐭𝐢𝐨𝐧 𝐏𝐃𝐅. After signing up, find the download link on the success page: bit.ly/bytebytegoship…
English
97
1.5K
5.8K
1.1M
Patrick Mugabe retweetledi
Java Guides
Java Guides@GuidesJava·
REST API Design Cheat Sheet:
Java Guides tweet media
English
7
206
765
55.4K
Patrick Mugabe retweetledi
Java Guides
Java Guides@GuidesJava·
REST API Design Cheat Sheet:
Java Guides tweet media
English
10
234
1.1K
0
Patrick Mugabe retweetledi
Paul Graham
Paul Graham@paulg·
Mistakes become very hard to fix once they're embodied in jobs. The people whose jobs they are become highly motivated advocates for the continuance of the mistake.
English
111
464
4.3K
0