Blog posts tagged: career
News and other things I find interesting
Last modified: Friday, August 03, 2012
Recently a question appeared on Quora:
What is it like to work as an engineer at Mozilla?
I broke down my answer into several sections, I'm probably forgetting to add some sections, but this should give you a good idea.
I can't imagine a company ever being as inclusive with remote employees as Mozilla. If you want to be part of any meeting, simply call in and be part of it.
If you want to chat with someone at any time, you can use video conferencing or IRC.
Every week you have a 1 on 1 meeting time with your manager. At least once a year you will have a performance evaluation discussion with your manager which is designed to help you grow and succeed.
There are team work weeks you get flown in for, and there are plenty of other opportunities to travel as much or as little as you would like for various get-togethers and conferences.
Control of your schedule
Mozilla has employees, contractors, and contributors in pretty much every time zone. It's best to have a mostly consistent schedule so people can find you, but no one will question you on exactly how often you work, or exactly what hours you work.
What you work on
There are quarterly goals, and to meet those quarterly goals you may be part of a project. So naturally you're expected to work on the goals you own, but otherwise you can work on anything you want.
I personally work mostly on bugs that I post. I've never had a bug I posted questioned, nor have I been questioned about what I work on. To work at Mozilla you have to have good judgment about what should be done since you have so much control.
A manager can probably force prioritization on you, but I've never had it happen.
There are no barriers put in place, if you want to do something, just do it. If you see a role that needs to be filled, no one will stop you. If you want to be awesome, no one will stop you or question what you do.
Just about everything is public at Mozilla. Sometimes company operational related information is protected behind a password, but as an employee you will have access to all of this information.
For example, if you want to know how you may get a raise, you can look up this information including data sheets, considerations, processes, and tools.
Sharing what you work on
If you work on something cool, you can not only talk about it, but you're encouraged to talk about it. There are rare cases where you will have to keep quiet, but only if it has security, legal or confidential corporate partnership implications.
There is a large community of Mozillians as well who will be reading what you post. It's also likely that several large news sites will pick up what you write and quote you.
Building a portfolio
Why do developers answer questions on sites like StackOverflow? Other than being a good person and helping the world, these people are building themselves an online portfolio that gives them credibility.
Almost everything you do at Mozilla is open, and therefore you build yourself a portfolio that is at least as valuable as the value you have from your University degree.
Everyone has a manager, and so in an abstract sense there is a hierarchy, but really there is no hierarchy.
Managers don't act like your boss, they act like your partner, counselor, facilitator, and if you need it, mentor.
You gain credibility from the work you do.
You can start to be a peer in certain parts of the code which allows you to review code based only on the contributions you've made to that section of code.
There is little to no distinction between contributors who pop out of nowhere, contractors, and employees. Mozilla is the community.
All decisions are made in terms of what is best for the community and the users.
Decisions are effected by neither market share nor profit. Seriously.
The people are awesome, intelligent, logical and make you proud to be part of the same team. There are plenty of opportunities to be mentored and to mentor others.
Bonus: How to get a job at Mozilla
Anyone can join the community and start helping Mozilla. If you want a job here, you'd be in a better position by simply jumping in and showing your value.
You won't be guaranteed a position, but at a minimum you're increasing your odds significantly, helping a non profit, improving your skills, and building yourself an online portfolio.
Last modified: Wednesday, July 04, 2012
I put my heart and soul into it, and a couple months later I was offered a full time position. I started working as an employee under Robert Strong as my manager.
I was initially offered a position as a contractor for a 3 month term and no guarantee of anything past that. I was coming from a salaried position with benefits, and since I had twin 2 year old boys, this scared the !#$#!% out of me. I knew the personal growth opportunities at Mozilla exceed those at my current position though, so I decided to take a chance.
I'm happy to say that when looking back, I'm glad I took the risk, and consider it to be one of the best decisions I've ever made. I've had an amazing year.
Mozilla's values and principles are aligned with my own. They allow me to be open about what I work on. Hundreds of millions of people get to see my work, and I feel like I am not constrained in any way.
The people I work with are awesome, each in their own way, and I have an implicit trust in each of their abilities. QA, support, other developers, project managers, product managers... they've all taught me so much over the past year.
What I've completed over the past year:
Over the past year, not including any of the completed Windows 8 Metro work, I've pushed over 215 patches across over 170 resolved/fixed bugs.
I've also filed 200 bugs that need to be, or have been done.
Here's a list of some of the larger things I've completed over the past year:
- A ton of Windows 8 Metro work
- Initial ground work along with Jim Mathies
- Graphics code integration
- Metro file picker
- Metro contracts
- Dozens of other tasks
- Updater work:
- Silent updates - Mozilla Maintenance Service
- Security enhancement to the updater process, with and without the service.
- Startup performance tasks under the Snappy project.
- Dozens of platform integration tasks to better integrate with Windows
- Jump list icons generated from favicons
- ImageLib work:
- BMP encoder
- ICO encoder
- Adding Vista style PNG ICO support.
- Refactoring of ICO decoder to use the BMP decoder inside of it removing the duplicated code.
- Adding hundreds of reftests
- Adding a dozen different telemetry histograms
- Firefox enhancements
- Lots of crash fixes, memory leak fixes, and intermittent failure fixes
- The Mozilla development cheatsheet
- Windows 8 Lightning talk
Where I'd like to go from here:
As part of the coding stewards program, I'm starting work on a project to bring videos for code contributors. The plan is to have short 5-10 minute videos that each cover a single topic. This would be similar to Khan Academy videos in the 1 video per concept way, but will be more like a tutorial and will be focused on contributing to Mozilla.
In my past job I managed a team of developers and I expressed interest in doing this at Mozilla.
Lastly I want to continue doing what I'm already doing, I love making a difference and getting things done.
Last modified: Wednesday, June 08, 2011
On July 6th, I will be going through a major change in my life: I’ll be leaving the company I co-founded and worked at for nearly a decade, and will be starting at Mozilla as a contractor.
I'm confident that the company I co-founded will continue to prosper under its new parent company, and I will be excited to hear about the company's success over time.
I'll leave behind many great memories, exciting projects, and extremely intelligent co-workers.
A few months ago, I was approached by a Mozilla technical recruiter and after careful consideration actually turned down the offer for contract work. For several months, I was torn on whether to stay at my current comfy job, or to step out of my comfort zone, and do what I've always wanted to do.
Several months later, reading John Resig's (creator of jQuery) advice, I reconsidered and took the job.
It’s been an incredible experience working with everyone at Mozilla. The company is easily one of the most developer-friendly organizations I can imagine, with some of the smartest coders in the world. Mozilla is hiring across the board – I strongly encourage you to apply if you’re looking for one of the best jobs you’ve ever had.
Why I chose Mozilla
A few reasons why I chose Mozilla:
- Much of the web's technology and innovation was developed at least in part by Mozilla.
- The Internet wouldn't be what it is today without Mozilla.
- They are a relatively small and open source organization; your work will be seen.
- They support openness and stand behind their beliefs to deliver a free and open web.
- Some of the smartest people in the world work there, my old company also had this, but the other people had similar backgrounds to me.
- Firefox has a significant market share and is used by millions of people around the world.
- Mozilla has a thriving extremely intelligent community behind it.
- They are not forcing me to move and they embrace a distributed team.
- They do what is right, and not what makes the most money.
- I get to be part of something larger than myself.
- Mozilla is one of the coolest places and code bases I could ever have the privilege to work on and contribute to.
Mozilla is accelerating their release cycle as well which is exciting in itself. Firefox 4 was released in early 2011, and they plan to also release versions 5, 6 and 7 in 2011.
If you are a developer interested in contributing to Mozilla related technologies, a good place to start is the Developer Guide. If you'd like to find out more about pursuing a career at Mozilla, read here.