Home
Categories
EXPLORE
True Crime
Comedy
Society & Culture
Business
Sports
News
Health & Fitness
About Us
Contact Us
Copyright
© 2024 PodJoint
00:00 / 00:00
Sign in

or

Don't have an account?
Sign up
Forgot password
https://is1-ssl.mzstatic.com/image/thumb/Podcasts211/v4/cc/17/b2/cc17b28e-dc17-28a5-ba96-b5a99bc92f41/mza_6646550504722810147.jpg/600x600bb.jpg
Coding Chats
John Crickett
63 episodes
3 days ago
On Coding Chats, John Crickett interviews software engineers of all levels from junior to CTO. He encourages the guests to share the stories of the challenges they have faced in their role and the strategies and tactics they have used to overcome those challenges providing actionable insights other software engineers can use to accelerate their careers.
Show more...
Technology
RSS
All content for Coding Chats is the property of John Crickett and is served directly from their servers with no modification, redirects, or rehosting. The podcast is not affiliated with or endorsed by Podjoint in any way.
On Coding Chats, John Crickett interviews software engineers of all levels from junior to CTO. He encourages the guests to share the stories of the challenges they have faced in their role and the strategies and tactics they have used to overcome those challenges providing actionable insights other software engineers can use to accelerate their careers.
Show more...
Technology
https://d3t3ozftmdmh3i.cloudfront.net/staging/podcast_uploaded_nologo/40748596/40748596-1710690984838-6b00cf26b3b39.jpg
Rust in production at planet scale : lessons learned deploying Rust code to millions of devices
Coding Chats
34 minutes 3 seconds
1 month ago
Rust in production at planet scale : lessons learned deploying Rust code to millions of devices

Coding Chats episode 55 - Emma Nedelcu discusses her experience managing teams that transitioned to Rust at Amazon Prime Video. She highlights the reasons for choosing Rust, including its performance and safety features, and the challenges faced during the transition from JavaScript. Emma explains the importance of over-the-air updates, device constraints, and effective onboarding strategies for engineers. The conversation also covers testing strategies, managing technical debt, and hiring practices for Rust teams, emphasizing the need for a mindset focused on problem-solving and adaptability.


Chapters

00:00 Introduction to Rust and Its Adoption

03:49 Performance Gains with Rust

06:37 Challenges of Over-the-Air Updates

09:36 Onboarding Developers to Rust

12:33 Team Collaboration and Trust

14:53 Testing Strategies for Rust Applications

17:38 Trade-offs and Considerations with Rust

20:13 Hiring and Team Building for Rust

23:02 Advice for Organizations Considering Rust

26:00 Managing Technical Debt in Rust

28:48 Conclusion and Final Thoughts

33:52 Exploring Related Content


LINKS

Emma's Links

https://www.linkedin.com/in/emmanedelcu/


John's Links:

John's LinkedIn: https://www.linkedin.com/in/johncrickett/

John’s YouTube: https://www.youtube.com/@johncrickett

John's Twitter: https://x.com/johncrickett

John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social


Check out John's software engineering related newsletters:


Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills.


Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track.


Takeaways

Rust was chosen for its performance and safety guarantees.

Transitioning from JavaScript to Rust involves a steep learning curve.

Over-the-air updates are crucial for device management.

Device constraints significantly impact application performance.

Onboarding to Rust can take about three months for JavaScript developers.

Building trust within teams is essential for fast-paced development.

Testing strategies must be robust to handle diverse devices.

Rust's compile-time checks require strict runtime discipline.

Compiling for WebAssembly requires careful optimization to manage bundle size.

The Rust ecosystem is maturing but still evolving.

Organizations should engage with the Rust community for better integration.

Prototyping can effectively demonstrate Rust's potential to stakeholders.

Managing technical debt in Rust involves understanding complexity depth.

Hiring for mindset and adaptability is more important than experience.

Ideal Rust engineers should have a deep understanding of low-level systems.

Candidates should demonstrate initiative and impact in their projects.

Coding Chats
On Coding Chats, John Crickett interviews software engineers of all levels from junior to CTO. He encourages the guests to share the stories of the challenges they have faced in their role and the strategies and tactics they have used to overcome those challenges providing actionable insights other software engineers can use to accelerate their careers.