ParityCheck

January 30, 2009

Why Not to Over- and Underestimate a Schedule

Filed under: ASIC Design, Embedded Design, Ramblings — paritycheck @ 7:12 am

I’ve been sitting in meetings all week now discussing technical issues for a new product.  One of the factors driving the design of the product is, ofcourse ,schedule.  Our team is being pressured by management to hurry up and design widget X1000 and have it available by a year from now.  My gut sense tells me that this new architecture and all the unknown issues that go with it tell me there is a lot of work to do and we won’t be able to produce this product by the desired end date.

I remembered this piece of advice and posted it here.  I do this because every now and then, I find small passages that accurately state what I’m thinking.  The fact of the matter is, I’m time starved.  By jotting it down here, it saves me from spending the time writing these ideas down in my own words.

Excerpt from Microsoft Project 7, The Missing Manual by Bonnie Biafore

The temptation to tell people what they want to hear is almost irresistible.  Lowering your initial estimates to more optimistic numbers might make stakeholders happy for a while.  Invariably, though, underestimated projects come in late and over budget.  The projects don’t meet their targets, but worse than that, the money would have been better spent on other projects.

On the other hand, being too pessimistic can be just as bad.  Ironically, high estimates tend to come true, even though their low-ball relatives hardly ever do.  Lavish estimates sometimes lead stakeholders to expect – or demand – more features or higher quality.  Moreover, team members feel flush with time, and might embellish their assignments beyond what is required, or work at a more leisurely pace.  The result could be an unacceptable return on the money invested, which may convince the stakeholders to can the project, or worse, pass over a good project.

Overly padded estimates can also limit an organization’s productivity.  When bloated projects commandeer the budget and resources, other worthy projects and their benefits get squeezed out.

January 24, 2009

The idea of a Responsibility Matrix in a project

Filed under: ASIC Design, Embedded Design, Ramblings — paritycheck @ 1:02 am

Well, I’ve been at this (ASIC design) for more than ten years now and I’m trying my hand at being a Project Lead.  Lucky for me, there is a project that, although complicated, is small enough for me to follow and learn from.  Not only that, the Project Lead was kind enough to assign me as Co-Project Lead.

So, I thought, I’ve got to start tracking issues and events that are happening throughout the project.  The main benefit being that it becomes a diary of what goes on in a project which is something I could use as a reference for future project lead opportunities.  I thought the best way to track would be Microsoft Project.

I ran over to the local library and found this gem of advice.  I decided to post it here so I never forget.  It is basically saying what I knew what was going on in projects but didn’t quite… codify it.  And, its a way of formalizing and documenting decision and data path directions.

Excerpt from Microsoft Project 7, The Missing Manual by Bonnie Biafore

Accountable

..means a group can make decisions, delegate work, and approve deliverables or other groups’ decisions.  For example, the general contractor for a construction project is accountable for the project.  The general contractor decides whom to hire, delegates work to subcontractors, and supervises and approves work.  Moreover, the general contractor earns more or less profit depending on whether the project is under or over budget.

Responsible

… represents ownership of performing the work for a section of the project.  The plumbing subcontractor is responsible for installing the piping and plumbing fixtures in a building.

Consulted

…indicates that the group participates in discussons about a topic or decision, but isn’t accountable for the outcome.  The general contractor might consult with a subcontractor about different solutions to a problem, but the general contractor is still accountable for the results of the chosen solution.

Informed

…means the group receives information.  The property management company needs to know about building amenities to prepare a brochure to attract tenants.

May 21, 2008

How To Ask Your Boss For A Raise

Filed under: Ramblings, Uncategorized — paritycheck @ 6:12 am

Adding this to my blog so I never forget.

Originally sourced from

http://www.eetimescareers.com/articles/i/ad3592/blogs/information-technology/how-to-ask-your-boss-for-a-raise.htm

We’ve asked Jack Chapman, salary coach and author of Negotiating Your Salary: How to Make $1,000 a Minute, for his tips on what you need to know before heading into your review and how to ask for a raise effectively and diplomatically.

When should you ask for a raise?
Chapman reminds people that the New Year isn’t the only time to ask for a raise. “There are two times to ask for a raise. One is when it’s expected at the performance review. [Another is] when anything changes or if you do anything really good in your job. Or, alternatively, if you do research at salary.com and find that overall you’re underpaid or at the median and you think you’re worth more than the median,” says Chapman.

According to Chapman, another time to ask for a raise is when companies are laying off. “Often, when companies are laying off and cutting back, it is a good time to ask for a raise because if you’re not one of the people that’s let go, then typically you’ve got more work to do and that can be a time when the employer can be motivated [to give a raise].”

Make sure you’ve earned it
Before you ask for a raise, “make sure you’ve earned it and make sure your boss knows you’ve earned it,” says Chapman. You can accomplish both of these goals with what Chapman calls the pre-review memo. He recommends writing a pre-review memo summarizing what you’ve done well over the past year. “Go back over the year and find the things you’ve done well. Then send a memo with two things on it,” says Chapman. The memo should include a summary of improvements that can be made as well as written goals and objectives for the upcoming year.

“Often achievements and things that you do are invisible to your boss,” says Chapman. He recommends taking time to write a one page summary of your achievements which can “help you feel like you’re worth it and of value and your boss knows that you’ve earned it [a raise].”

To help you remember all of your achievements throughout the year, Chapman recommends keeping a journal. “A job journal is something you should keep during the year because at the end of the year you can’t think of all the stuff you did the past 365 days. Whether that was an irate customer and you calmed them down, or an e-mail with a compliment—keeping a journal is important.” As a side benefit, if salary negotiations with your employer do not bear fruit, this is a great source document for crafting your resume.

How to ask for a raise
First, get the pre-review memo to your boss outlining your goals and accomplishments. “Make sure you and your boss [both] agree on your accomplishments and goals for next year,” says Chapman. Secondly you want to ask your boss what you can do for them to help meet their goals. By asking this your “boss gets the message that you are out to help them succeed.” Once you have the person emotionally on your side, ask for a raise. “Have three numbers in mind—ideal, real and no go. Start with the top of those numbers. For example, if you want $70,000, ask for $80,000. Get the biggest possible number you can justify and have reasoning behind it—talk about your goals and how you’ve helped the company. If you don’t get your ideal or real number, don’t quit,” says Chapman.

Chapman believes that success is possible. “Help your boss succeed by doing your job the way your boss wants you to do it.”

“I got the raise—but it’s not what I wanted”
Linda Chan, a television research analyst based in New York City, wasn’t satisfied with her salary. “I was doing more work and increasing my responsibilities at the company, and I wanted my salary to reflect my growth here,” says Chan.

She met with her boss and explained that she was unhappy with her salary. Her boss gave her two suggestions—to look for another job that paid more money, or to meet with the president of the company and give a presentation on why she deserved a raise. “I really like my job and I like the people I work with so I decided to go with the latter,” says Chan.

Chan set up a meeting with the president and created a power point presentation. “I broke my presentation down to three parts. The first [part] was what my responsibilities included when I started at my job, the second one was how it had grown after a year and a half, and the third one was what I wanted to improve on in the future, and what I thought I could contribute to the company, [such as] learning the new system that we’re getting, attending more meetings on behalf of my boss, and taking steps toward a managerial role so that if we hired another person in our department, I could help train them.”

At the end of the presentation she pasted examples of her contributions to the company such as the newsletter she compiles and writes along with a few “thank you” e-mails that clients had sent her. “Basically saying that my work spoke for itself, and if it didn’t, that other people I’ve worked with could vouch for me. The president really liked my presentation. A few weeks later, my boss pulled me aside and told me that I had gotten my raise and it was double the usual amount of a raise!”

Chan recommends talking to your boss if you aren’t satisfied with your raise. “If you feel you deserve a raise, you should talk to your superior about it instead of waiting. The worst that can happen is they say no.”

Now, go get ‘em!

May 14, 2008

Who Gets Promoted and Who Doesn’t and Why

Filed under: Ramblings — paritycheck @ 11:05 am

I don’t quite remember how I came upon this information but am posting it here so I don’t forget.

Who Gets Promoted and Who Doesn’t and Why
This is another book I’m giving the person I’m coaching. Her career goal is to hit the C-level so buying books that I think will help her understanding how to improve on her existing core competencies or understand how things, like promotions, work. Who Gets Promoted, Who Doesn’t and Why: 10 Things You’d Better Do If You Want to Get Ahead by Donald Asher is an excellent read on what you have to do, sometimes, to get that promotion.

Here are Asher’s 10 things you better do if you want to get ahead with my commentary:

  1. Timing is as important as performance or talent: Timing or luck? Both? Timing is everything. You can’t force events to occur or promotions for that matter. There are no accidents and everything unfolds at the time it is supposed to. Be prepared to seize the moment when it does present itself. And don’t get frustrated when it doesn’t.
  2. You have to get noticed: Wallflower? Then you’re not getting a promotion. Sorry, but you have to have enough extroversion, lots of confidence, and willingness to be noticed to get that next promotion.
  3. Lifelong learning is required for lifelong success: Read, read, read. Talk with others who have succeeded. Figure out what they’ve done. Pick an area of expertise, but be well rounded to be a generalist. Create your own curriculum on what you think you need to learn, and then ask others if you’re on the right track. And find a mentor and coach.
  4. All business is sales: Sales is king. Sales people know it. Marketing people know it. Developers should know it. Be involved in the sales process so you can contribute to your company’s success. Don’t forget customer service is a big deal since that’s the source of additional sales.
  5. You need an ascension plan, but: Have a career plan, outlining the next three to five years. Be realistic about your existing weaknesses and limitations of your skill set.  Be realistic about your goals. You can’t jump to VP if you in only the second year of your career. Be practical and realistic so you don’t set yourself up for disappointment. 
  6. Always make your boss look good: Always. Think of it as being their celebrity handler. You do all the work, checking and triple checking the quality of your work. Review your work with them if they are presenting it so they understand it inside and out. You set up the environment whether it’s a conference or meeting, making sure everything’s been taken care of. You even escort them to the conference or meeting, outlining to your boss what has been set up ready for their use. They must have confidence in everything step to show time. One mistake will shake their confidence and make them look bad.  And…that’s bad for you.
  7. Suction–It pays to stand next to superstars: The things you’ll learn by being close to superstars. You’ll learn why they’re successful. You’ll observe their work habits or tools/templates that they use for a deliverable. You’ll learn they’re approach or how they tailor solutions to a project. If you’re on their team, you’ll start building a track record of delivering results. The only hitch? The superstar has to trust you. You have to be trustworthy.
  8. Find guardian angels and benefactors: Find them in your company. If you can’t then find one outside your company.
  9. Move and here’s why: Remember that thing about timing? It the assignment, new job, or promotion is the next logical step in your career. Then move, if you can.
  10. Find the right mix of prepared and lucky: A friend once told me that she was lucky. Lucky things happened to her. I replied, “I think part of your personal brand is that you know how to create serendipitous events.” Yes, there is luck. But those who are prepared and know how to take advantage of the opportunities when they cross you path know how to “create serendipitous events.”

Buy this book, you’ll love and need it to prepare for your next promotion.

April 2, 2008

Tips for running meetings smoothly

Filed under: ASIC Design, Embedded Design, Ramblings — paritycheck @ 10:55 am

Here is some advice about how to run meetings smoothly and getting results.

  1. Prepare for your meetings.  Prepare an agenda that covers the topics you need to discuss.  If you are not sure, consult with key members of the team.
  2. Spend 5-10 minutes before the meeting prepping.  Basically get your head around what the key topics are and organize your thoughts.
  3. Always be on time.  The person running the meeting should have it setup & ready to go before the starting time.  Meaning phone conference running & any netmeeting or WebEx.  People will appreciate this.
  4. Pictures help a lot to communicate ideas.  Also being able to point is helpful.  So, if you are at different sites, the capability of netmeeting or WebEx is very helpful.
  5. Be respectful of peoples time and try to get folks who are only interested in certain topic on the agenda for the start of the meeting.
  6. Be flexible with the agenda to make sure all important topics are covered, but keep the meetings on track if they start to stray.  This is where judgment comes in to play.  If a discussion starts to drag on and it becomes apparent it is not going to be quickly concluded, ask that this topic be taken off line and capture with an action.
  7. Try to capture the important items in meeting notes and actions as briefly as possible while trying to make sure key items are clearly captured.  This is not always easy and is an area where I am not sure I do well at times.  It is not necessary or efficient to capture everything but this is where the trick is, how to filter the discussion and capture the important items.  It is easier for topics you are very well versed in, not so easy when the topic is something you may not be knowledgeable with.  On the unfamiliar topics, don’t hesitate to ask for clarification or ask if you adequately captured an item.  Repeat what you captured and have the team confirm or ask the team to recap what needs to be captured. Sometime this is difficult because you feel you are exposing a weakness but don’t let this get in the way of getting clarification.
  8. Be flexible and adjust to the team you are working with.  Every project team is different.  Find what works best for that team and stay with it.  Once you find the groove, set the routine and stick with it to provide consistency which will make the process go more smoothly.
  9. Tracking action items helps keep people honest and helps things actually get done so you can make progress.  At the end of the meeting, try to summarize the action items real quick to remind people what they owe and make sure there is agreement.
  10. Summarizing the key notes in an email is useful.  People miss meetings for various reasons, or your boss might not want to attend but want an update.  Also it is useful if something gets decided to know when that was decided.  Sometimes you have to change decisions and it is useful to know why you made that decision in the first place.
  11. When keeping notes during the meeting, I just write a few words or short sentence to remind myself of the topic and conclusion.  I use a notebook so it doesn’t disturb the WebEx, but you can use whatever tool.  After the meeting concludes before starting something else, write the details of the notes and action items based on that few words or short sentence.  I’ve found this method helps the meeting keep moving along so people are not waiting for you to write a book.  And if I do the notes right after the meeting I don’t forget what the few words or short sentence means.  This does take more time, but it is a method that works for me.  Might not work for you.  I usually spend 30 minutes after the meeting doing this and maybe starting on my actions items.  So just budget your time for this (don’t schedule another meeting right after the meeting you are running).
    Sometimes it is useful to track attendees so you know who was there when certain key things were discussed.  I do this in my notebook, but just as easily do it in the meeting notes. 
     

December 29, 2007

Getting out of the Pigeon Hole

Filed under: ASIC Design, Ramblings — paritycheck @ 2:13 am

It has been my experience that, as a chip designer, if you work on a piece of logic, you own that piece ..Forever! 

(That is, ofcourse, until you decide to leave the department or company.  But for now, let’s say you don’t want to pursue that option for a variety of reasons.)

This article is for those of us who feel pigeon-holed and have a desire to venture out of our comfort zone.  It is for those who yearn to do something new and by doing that task we believe it is within our capacity to complete it successfully.  Although this article is geared toward chip designers, I think it will help other careers as well.  I’ll describe my experience in using three strategies; what worked and what didn’t.  Who knows, maybe it will help you.

To give you some background, I’ve been working on several pieces of logic over the years and they’ve pretty much been the same pieces ever since I started working at the company.  Sure, these pieces were improved over time due to changing requirements but, overall, the problem that they solve has been the same.

Strategy #1: Passive Approach – “My work speaks for itself”

My initial thought was that if I demonstrated that I could do tasks well I would be assigned to even more exciting and challenging work.  I wouldn’t have to toot my own horn or brag about how good a job I did – not that I’d be comfortable in doing that anyway.  Instead, the success of my work would show through first pass silicon, bug-free code, my ability to design and develop a competitive product, helping the team, etc.  I accomplished all this and I believe it resulted in getting promoted - higher titles and raises.  However, the modules that I worked on stayed the same.

In retrospect, I think this strategy worked during the early stages of my career.  I think that if one works well, titles and pay increase rapidly during the early years but taper off as time goes on if you’re still working on the same thing.  However, based on my experience, this strategy may not get you to work on new modules (or new tasks).  What happened instead was that my boss assigned modules to other engineers.  I helped out where I could but it clearly wasn’t what they were paying me to do.  This, by the way, is when I began to realize that I was pigeon-holed.

Being technologically-typecast has an upside.  It’s good to know that I felt needed for some expertise that I had.  That I was the expert at a specific area and that I could be counted upon to get the job done efficiently.  I had a sense of knowing key pieces of information that helped keep the company moving smoothly.  The problem is that I wasn’t growing and started to wonder where I was heading.  I was stagnating and bored.  Another drawback is that those skills are tuned for a specific company and may not necessarily transfer over to new jobs or new career paths.

Strategy #2: Vocalizing During Reviews – “Boss, I’d like to do more…”

It seemed to me that no matter how well I did my work, I could never be assigned new projects or modules.  It always felt like there was an invisible barrier.  It seemed my career and knowledge growth was at a standstill.  I get good,..no, make that GREAT end-of-year reviews.  During my reviews, I would talk about my desire to do more.  Every year I would mention it.  My boss would say things like “We appreciate the work that you’ve done”, “You’re doing a great job”, “In the future, we can see you in exciting roles doing <insert role here>”, etc..

Sadly, in the end, nothing changed – titles and modules worked on were more or less the same, raises came with small increases.  I suspect my boss, and what is probably typical of many bosses, look at how to get a task done in the shortest amount of time with the minimum amount of risk.  When they do this, they give the work to the same people, not new people, because they can count on those same people without worry.  This does not do well for a person who plans to be in the workforce for many more years who wants to keep their skills current.  I was never explicitly told I could or couldn’t do a certain task.  It is said implicitly by not giving me the task at all.

Strategy #3: Getting Help From Friends

This time, I was determined to do something new.  I was fed up after several years of reviews where nothing changed.

I’m proud to say that I’m now on a path to learning another major piece of logic that is completely unrelated to what I’ve done before.  I still work on front-end ASIC design but the module is completely different.  No longer am I bored.  No longer am I losing focus.

I participate in building something new and taking responsibility in ensuring that it gets done correctly.  Everyday, I look forward to connecting the pieces of this new design.  Molding it.  Shaping it.  Forming it into the final product.  It feels like being reborn.  That same enthusiastic feeling with I started my first ASIC job has come back.

How did I do it, you ask?

Well, timing is important.  Getting something new to work on is best accomplished when a project is just beginning.  During the initial phase, requirements are still being drawn up so task assignments haven’t been handed out yet.  What worked for me is to get involved during the early phases of the project.  My advice would be to get a feel for where you want to be involved and attend or participate in initial planning meetings.

Next, since asking my boss didn’t work in the past, I volunteered my skills to coworkers instead.  I asked if I could help friends who were working in areas that I was interested in.  Instead of stepping on people’s toes and just barging in on work, I told them about my predicament and they were kind enough to help me out.  By volunteering to help them out, you get to learn and work on new modules – old to them, but new to you.

I worked with my coworkers and agreed to start learning about the new requirements for the module.  I took time to understand it and set up and/or participated in meetings to discuss what things needed to be addressed.  We split up the tasks and invited each other to related meetings.  We didn’t wait for our bosses to invite us or figure out who will do the task.  We just started doing the tasks.  I’m the kind of person that wants to get involved in a lot of areas of the chip so, the good thing with this approach is that I still get to work on being a guru on the stuff I worked on before and I get to expand my knowledge to something else.  I have a speciality as well as having broad-based, general knowledge in other areas.

I guess this is where networking helps.  My friends knew the subject matter more than I did and helped me get started.  They understood my plight and lent a hand.  They make themselves available if I need some answers but are trusting me to get the job done.  And, likewise, I’ll help them out when needed.

I still can’t say if this will help me in terms of pay or title because I haven’t got my review yet.  But, I can definitely say that it has helped me move on to other parts of the chip while still retaining my prior responsibilities.  I add value to the company because of my knowledge in modules I’ve worked on for years and possibly, in the future, add value to myself when it comes to the new modules.

If you’ve learned about other strategies that have worked, I sure would love to hear them.

Luck to you and make it a good day!

November 30, 2007

Where to go from here – ASIC Designer

Filed under: ASIC Design, Ramblings — paritycheck @ 12:40 am

Lately, I’ve been wondering about what the future will look like for ASIC Designers.  Maybe I’m a bit paranoid but it just seems to me that there is an increasingly hostile environment for the American ASIC Designer.  Our jobs are threatened by outsourcing and there just doesn’t seem to be enough work available.  Now, I don’t have any hard numbers or evidence to show in more detail what is in fact happening.  But, it is based on articles that I read on the Internet, when I scour job listings, or from reading blogs.  Even the company I work for has frozen local hiring but is hiring overseas.  I guess you can call it a gut feeling.  The same gut feeling that was on the mark about it being a well-paying and enjoyable job.  I consider myself lucky to have experienced the fun years of the mid-90s to early 2000s when my options where increasing in value up to $5 per day.

I do have to say that I love this career and the challenges it brings.  It’s always great to microarchitect pieces of logic and see it work in the real world.  So much goes into developing a chip.  So much careful preparation that by the time the chip arrives, you’ve got to take a deep breath and hope everything is okay.  It’s a moment where the rubber meets the road, when men are seperated from the boys, and a test to see if all that hardwork and late nights of debugging have paid off.

But now, I wonder where is this career going?  What is it leading to?  And, how can we prepare for the future.  Will we still be designing chips?  If not, what to do?  As you can probably tell, I’m a little bit unsettled.  There is so much uncertainty.  I was always so sure about being an ASIC designer.  To me, it’s like a job that fit my Meyers-Briggs profile exactly.  But, nowadays, I’m not so sure about this career anymore.  Is there a future in it?  I’m writing this blog mainly to reach out to other people who develop ASICs.  I’d like to hear from you.  Do you have the same concerns as I do?  What has been your experience?  What do you think?

June 13, 2007

Hello, world!

Filed under: Ramblings — paritycheck @ 1:19 pm

If you are reading this and are a chip designer, do you realize that there are only about 50,000 to 100,000 of us in the world?  As of 2007, there are 6.6 billion human beings on this planet.  As chip designers, we make up .000015%.  Talk about a niche.  Still, there are so many gadgets that have yet to be built…and so little time.

The reason that I mention that is because I’ve surfed around quite a bit and haven’t found a blog on chip design that I could relate to.  Maybe thats because there are so few of us.  And maybe because most of us are too busy with schedules so tight that we just don’t have the time.

I’m hoping to change that.  From requirements development all the way down to maintaining something designed 10 years ago, this blog will have articles related to practical day-to-day involvement in chip design.  My focus will be mainly on ASIC design since that is what I’m exposed to most often.  There may be some articles on FPGAs but it won’t be much.

Here’s to hoping that this blog will be a valuable resource for both beginner and experienced chip designers.

Blog at WordPress.com.