Success

Book Review: “3.5–ADO.NET Training Kit” and passing 70-561 exam

February 10, 2011 Book Reviews, Certification, Success No comments

Training Kit

imageSo I finally finished reading training kit for ADO.NET exam. It is easy to read book with many topics that you probably know or at least heard about if you are using .NET. But besides of standard topics on DataSets, Data Querying, LINQ there are few that represent much more interest at least for me. For me these are chapters about Synchronization Framework, Entity Framework and Data Services (REST). I read them with great pleasure. But unfortunately in book they are covered briefly. Also Data Services are not even included into exam questions. I would also say that unless you are going to pass 561 exam, don’t read this training kit, better find some good tutorials on each of the themes, use MSDN and try everything out.

Exam 70-561: TS: Microsoft .NET Framework 3.5, ADO.NET Application Development

I passed 70-561 exam with score 700 out of 1000 with needed 700 for passing. Yeah, that is damn near to failure. But what is also interest that the more I fill overconfident about the exam the worse score I get. Maybe that is why I failed WinForms for the first time, but passed ASP. Who knows.. This rule probably doesn’t apply to WCF exam. I was confident about it and passed with high score.

You can see my transcript using this information:
https://mcp.microsoft.com/authenticate/validatemcp.aspx
Transcript ID: 904316
Access Code: andriybuday

Nearest certification plans

My current certification situation is as following:
image
So I’m very close to my certification goal which is “MCPD: Enterprise Application Developer 3.5” and I already scheduled 565 exam for Friday Feb 18. As for preparation I really hope that couple of years of experience in Enterprise project are in help for me. Also I pick up “Microsoft Application Architecture Guide” for my reading. I read about first 30 pages and I’m impressed by this book. It is real glue. I like very much things that I read from very first pages. Will see how it goes and be ready for review next week. I believe it will be more comprehensive, since this is not kind of training kit book.


No comments


Woot! That have happened–I’m done with English courses

January 26, 2011 English, Success 4 comments

I attended English courses in my company for about 9 months. For this time I learnt a lot of new stuff, and revisited whole bunch of grammar. Also I slightly increased my vocabulary.

I’ve mentioned many times that English courses are very important for outsourcing company and for me particularly. I even described one of the lessons and recommended some activities to do to learn English.

  • I’ve finished courses with final test result of 92%.
  • My strong areas are: listening, speaking and vocabulary.
  • My weak areas are: grammar, translation.

So this is very good result, but unfortunately my average score is about 80%, so I might not be eligible for next free of charge course. But honestly I do not hurry for being English course’s student for another 9 months. It makes me tired… because I have to allocate additionally 4-5 hours per week and as usual I rob it from my sleep hours. I think that the next most needed thing for me is to practice more and more. Actually I even planned to find someone who would like to talk with me in English all the time. Not my girl – she is more German expert and weak in English, and not my best friend – he is too shy or smth..


4 comments


70-562: TS: Microsoft .NET Framework 3.5, ASP.NET Application Development – PASSED

January 21, 2011 Certification, Success 8 comments

That happened! Passing this exam was the main stone on my road to MCPD Enterprise.

How did I prepare?

I already mentioned that I prepared as usual by reading training kit. But this time I did most of the Labs, because I have really little experience in Web Development.

Honestly for me ASP revealed to be very simple for understanding and easy to work with. I guess because it intersects with other technologies and also because I have more or less good dev experience in other areas.

Also I did not concentrate on learning ASP.NET extremely well. We all know that nothing with ViewState and other aspects of it are now history. ASP MVC should be technology number one for learning web, but I had to pass this exam. Also understanding what is under MVC and from what it all started is good.

Passing Exam

Exam has 45 questions for about 3 hours. I hated answering them. They were long to read and extremely boring. I HATE THIS EXAM QUESTIONS. 2 screens of question is too much, it kills.

I PASSED EXAM with score 907, woot!

You can see my transcript using this information:
https://mcp.microsoft.com/authenticate/validatemcp.aspx
Transcript ID: 904316
Access Code: andriybuday


8 comments


Where Do You Want to Be In a Year?

January 8, 2011 Success, YearPlanReport 9 comments

So time for new year resolution has came.
I created similar list last year and wrote why I really think that having list of things you want to do during the year is very important. I listened to many of time management books, especially I like those recommendations that includes all aspects of the life.
Accordingly that their point of view life consists with following set of aspects: health, relations, finances, emotions, work. If at least one of this aspects lame you wouldn’t enjoy your life entirely since other aspects will suffer. I found that in recent time I neglected my health. Yeah, I’m young so I do not feel myself completely crappy, but anyway I don’t like situation in which I’m now. That is why I’m planning to have some activities in list that should help me with my health. In this country you have to work half of your life to get apartments to live in… wtf? yeah, that’s truth, so there have to be some better ways to earn more money, not only sweatshoping work. To enjoy my life it would be perfect to travel abroad with middle-low budget.
Here below is my resolution list for 2011 

  1. Release awesome free Design Patterns book in Ukrainian (somewhen in Spring)
  2. Enterprise certification (finishing with 565 exam, very likely till the end of Winter)
  3. Learn to ski & swim well (I can both, but I want to be good at that)
  4. Show kick-ass performance at work (just MUST do this, I see this as key for moving forward)
  5. Learn WP7 and Silverlight
  6. Start working on some “real” book (just collecting ideas on book)
  7. Read 24 books (this year I will definitely hit this score)
  8. Travel abroad (I’m planning for Europe tourist tour)
  9. Marriage (yeah, this really is in the list “OMG” I’m saying to myself…)
  10. Learn one more programming language (probably everyone heard about learning one language per year, why not?)
  11. Frequent dev meetings (this is hard, because preparing takes lot of time for me)
  12. Karpaty alpinism (again health stuff, want to do this with my girlfriend)
  13. Became known presenter (couple of outside the company presentations)
  14. English (watch films, find guys to talk in English)
  15. Start coffee-and-code in Lviv
  16. Write couple of personal-small programming projects / contribute to open-source
  17. Visit one of the solid conferences
  18. Get money machine / some ideas / investments / whatever
  19. Start some business even small and crappy – but have it to learn
  20. Became better-and-better in planning and achieving, continue growing, etc, etc…

(list above is not ordered in any way…)
Do you have your plan for this year? If you don’t better think about it, because “if you fail to plan, you plan to fail”.
Ok list looks large but fair enough to achieve this in year term. Thank you for reading my resolutions and please share yours!


9 comments


What has been done during last year?

January 5, 2011 Revision of my activity, Success, YearPlanReport No comments

Looking back at my “Where Do You Want to Be In a Year?” blog post for the Jan 2, 2010 I want to  summarize for myself if I stand where I wanted to stand and what else could be done to improve my position. I would recommend to all of you to execute same reviewing and realize if you are moving in the right direction or not.
For the previous year I wrote 156 blog posts, read many books, performed dozen presentations, became Senior developer, passed few ms exams, decided to start my first book and did many other hopefully right things.
Remember, life is limited in time, so if you don’t move in the right direction you might waste it entirely.

So the list I had in the beginning of 2010:

By the end of 2010 I want:

1.
Get Microsoft Certification:
  * MCTS (Exams: 70-536 and 70-505) SUCCESS
  * MCPD 70-563 and 70-565 (this one is big fish, but I need such!) FAIL
Ok, so I went very good with this item. I successfully passed 536, 505 and 503 exams, they lead me for passing exam 565, passing which credits Enterprise Application Developer 3.5 certification.

2. Read at least 24 books. 62,5% SUCCESS :) 37,5% FAIL
Ok, so counting only programming-related books I have 15 books read. You can see their reviews on my blog just follow this link.
I do not think that I’ve completely failed this item, since I have couple of books in progress and their review will reveal shortly on this blog.

3. Become known employee in my company, sharing knowledge and doing presentations, so will have much more authority among co-workers. SUCCESS
I took few good steps here. I performed company-wide presentation on Domain-Driven Design and of course I performed many so called developers meetings for my guys from my division.
I also performed 4 presentations outside of my company – two at Lviv .Net UG, one at Java UG and one at IT-Jam in Kharkiv.
Visited MS SWIT Conference in Kyiv.

4. Familiarize with Java and contribute research and development work to Kohonen Maps world. SUCCESS
By this link you can find out that I did some research on this matter and I’m almost 100% sure that I was first in the world who wrote parallelized algorithm for Kohonen maps with .net framework version 4.0. I even utilized some of the new concepts introduced regarding multithreading in .net 4.0. Along with this I spent some time writing same project with Java.

5. to be Senior Developer and continue growing… SUCCESS
Done! Read Friday 13th blog post. As of growing I slowed down slightly as per me. Maybe I got tired, but I developed my career plan.

6. Improve my English skills to have at least upper-intermediate strong level (according to my company graduating) SUCCESS
Definitely improved my English skills. My official level as of now is “upper-intermediate”. It might be that shortly will get “+strong” since my English course is not finished yet. But honestly I feel that I lack a lot to speak fluently. But now I can easily watch films without translation, listen podcasts, etc…

7. Gather good capital and looking for investments of money. SUCCESS
Ah! This progresses hardly, but I do a lot here. At least I got higher salary rate because of my promotion, but I started spending more money. I have to work on this more. Btw, my blog earned 4,81$ for the year, but we all know that it pays me differently.

Next thing I will create blog post “Where do you want to be in a Year?” for the 2011.
Till next time.


No comments


Exam 73-503: TS: Windows Communication Foundation – PASSED

November 27, 2010 Certification, Success, WCF 3 comments

I recent posts I mentioned that I read training kit for ms WCF exam. Of course I did this for some reason. I had this exam scheduled for yesterday as well as presentation on WCF for Thursday, which went extremely well. All that was scheduled because I decided to throw myself out of comfort zone. I now can ensure you that this approach indeed works. So, if you want to achieve something don’t hesitate – just go ahead and put some deadlines for yourself, and make them visible to others so this will be controlling your activity.

How did I prepare?

So I’m completely sure that positive result of this exam was guaranteed by my experience working with WCF. But anyway I read training kit, which brought many interesting aspects and some kind of hints for the exam. Third learning source (after experience and training kit) was MSDN and writing simple applications by my own. I do not like to use examples from training kit, also I found few mistakes in kit. Thursday’s presentation on WCF helped me as well, I strengthen my knowledge in transactions and instancing. Just before exam I tried MeasureUp demo test and got 6 out 6 – never got this at MeasureUp for other exams.

Passing Exam

Exam has 45 questions for 120 min. And I liked answering for them, since I faced dozen of questions related to what I do in my everyday work.

I PASSED EXAM with score 918, this means that I answered correctly on 41 questions. Woo hoo!

You can see my transcript using this information:
https://mcp.microsoft.com/authenticate/validatemcp.aspx
Transcript ID: 904316
Access Code: andriybuday


3 comments


Throw yourself out of comfort zone

November 8, 2010 Opinion, Success 2 comments

Some time ago I twitted “To be successful throw yourself out of comfort zone”. I had this idea long time ago, but did not write about it. I see that I have to post something about this, since I’m becoming lazy and I do not like this at all.

Fascinating Uncle Bob

Yesterday I listened Uncle Bob’s thoughts on “Pragmatic Podcast”. (Who doesn’t know Uncle Bob is Robert Martin). That was “fascinating”, he is “fascinating” person and I was inspired by this episode. He has that much energy after being in computer field for about 40 years he is still interesting in everything new. He talks about new and old programming languages he understands software development deeply. What inspired me the most is his attitude to all of this and his bright energetic view on programming. He reads science fiction, rides his bicycle every day and has extended family. This all helps him be in good shape. I would recommend to listen to this podcast – just download and listen when you have time.

Yesterday I complained to my girlfriend about my situation and not satisfaction of what I’m doing now. She stated that I do not have enough activities outside of my work. Yes, but my blog is my 3-rd place where I’m trying to find myself. But I also did not post lot in recent time. This means that something is wrong. So here in this post I would like to talk a bit about this “something wrong”.

Finishing tasks in latest moment

I guess this is not a big secret that many people tend to do everything in the last moment. Working in the last moment is hard, but very productive. Many of us extremely enjoy when they have finished something well and when in the last moment you triumph. I had many of such moments and they made me happy.

Of course there are techniques called “time management” where ideologists try to address this issue. At least in one of the techniques it is mentioned about separating all the tasks you have to do into 4 sets. The most important and best known is one where you have important but not immediate tasks. Books on  management recommend to work in this set continuously time to time and soon you will have all tasks that are important but not immediate completed before it is becoming hot. What can I say about this idea? It is indeed good and awesome, but it doesn’t work for me at all, and probably it doesn’t work for many of us.

In recent time I had some posts talking about my future plans, like reading 24 book till end of the year, passing couple of ms exams, becoming senior developer, etc. Yeah, I did huge portion of these, but there is only two months left till the end of year and I still wait for the latest moment when I can pass yet another milestone. For example I’m reading training kit for wcf exam and it goes so slowly that you cannot even imagine. But when I had exam on winforms and I knew that only 1 month is left to it and reading was much more rapid. Same shall be done to wcf exam, I think. Just schedule and this will force me to read and train. Today I gonna schedule my exam for the end of this month.

We have to make us busy

Many of us are very busy at work, we are even often working from home. This is tremendously helpful in moving forward in your career and if this is accordingly to your plan, you are fine. But I guess you have too many other plans that you would love to accomplish. Where do you have them located? In list with lowest priorities? Not written somewhere at all? Anyway unless you have some deadline for task X you are not really hurrying to accomplish it. If you have also tasks Y and Z and you see them “nice to have” you probably will not do them since X will be done in latest moment. What about Y and Z then?

So what do I propose to do? Have external visibility of your progress. If you are person with high responsibility you will do your best to accomplish all of your tasks because you are sure that others keep an eye on you. In my case I can schedule exam and write blog post on this. I will know that you readers are keeping eye on my. Even if this is not so important for you, it is very important for me.

Doing easy or doing complex tasks

When I started learning my university I had extremely strict teacher. He had banished out of university many students (1/3 of my academic group in 2 years); receiving high rates was incredibly hard as well. This challenge forced everyone to intensive learning. Never in my life I had that painful learning. With other guys we spent nights and days on learning, we slept about 4-6 hours for couple of weeks before exams. (I guess there are people reading blog that have finished my university as well: I’m talking Fedyk). If software developers would sharpen their skills and other engineers would work in their field that intensive, we would have artificial intelligence already up and running on the streets :).

So if you feel that you are currently in lucky situation, because you do not have lot of work and you can work relaxed, something is wrong with your attitude to work and your busyness. If indeed that is the case, use that time for your personal development for career and etc. But first please check why you do not have that much work, maybe you are lazy ass.

I also see this to be the way to teach new junior developers. I guess it is great to give them challenging work. It is not always easy to find such work, but that is the greatest you can do for them. In recent time I’ve got new apprentice, if you will. I see it would be hard for him to fit our team and start working effectively in manner of one month term. I have to try different approaches to quickly coach him – kinda throwing him out of comfort zone and then managing stress as one book recommended.


2 comments


Lviv .NET UG, 7-th meeting took place

November 1, 2010 DDD, Opinion, PublicTalks, Success No comments

 

I had chance to speak at yet another Lviv .NET UG meeting. This time I spoke about Domain-Driven Design. It looks like people got interested in this topic.

You can read my feedback post about this event at Lviv .NET UG site by the link “Зустріч #7. Враження, враження, враження…” (it is in Ukrainian).

I will write almost the same here and add some own opinions, so it would be interested not only for those who doesn’t know Ukrainian, but for those who would like to hear my personal opinions.

How it was

It was really great that we’ve got more than 80 people registered for this event. And if company where we hosted this event would provide us with bigger meeting room, we would probably have over 50 near 60 people attending. So as you understand because there was lack of physical room some people just turned around and went home. Crap! I would love to have them all listening to me.

Getting Scrum

Event has two speakers, me and Igor Racyborynsky. Ihor talked about “Getting Scrum”. We all played scrum and formed following product backlog:

PA295635[1] 

It was really interesting, at least not as usual presentation. But he has not covered all about the scrum and at least key concepts. Although it went extremely good.

Domain-Driven Design

I talked about Domain-Driven Design for the 5th time. Yeah! I even don’t need any time to get prepared.

PA295689[1] 

It was late in the evening, so many people got tired, especially me talking over 1 hour bombarding with new and new terms and mentioning lot of information about known concepts and patterns.

This time I’ve got many different cool presents:

  1. Yet another VS2010 bag (exactly as one I already have)
  2. IE9 T-Shirt
  3. Pen and notebook

Do you know what I like about delivering presentation to huge audience? – I always get couple of people that are excited about my speech and interested in my. They then come and talk with me as I’m an expert. I feet bit scary and nervous to show that I’m not that cool :)

Beer

As usual we have small beer party in the end. This time it probably wasn’t that small. You decide:

PA295665[1]

Speaking at JUG about DDD

Today I was invited to Java User Group meeting to talk about DDD again. Thank you guys.


No comments


Interview. Job of dream. Cheese, money and happiness?

October 17, 2010 Career, Opinion, Success No comments

July 25, I wrote blog post called “Interview” and I mentioned that maybe in year term will post yet another blog post with the same title. Now I’m writing post with almost same title. Is this due to the fact that I had interview again? –Yes and no. Actually I had two interviews since that time and did not post about them, and I will have two more interviews next week.
Real reason for this post is to extend the “Remember that you are also interviewing” section. I want to hear what you guys think about what we should ask on Interview to ensure that we get job of our dreams.

Job and happiness

I’ve been trying to find out for my-self what is the job of happiness. What does bring satisfaction from what we do.
I did not read huge range of articles and other resources on this theme, only couple of them. But besides of them I have my own opinion on this topic and will try to express it.
For example, this article states that connection between good job and happiness is overrated (?). As I understand from that article more evident role in job satisfaction is your own optimistic mood, which can be developed not only at your work but at home with you family. I agree with this, I now see that when I have better relations with my girlfriend I do have better desire to work. Also I disagree with this, because I think that everyday activities play very evident role in my satisfaction of my job. Currently everything is more or less good, but I do not get enough “I love this” work.

Cheese

But on other hand are you sure that your cheese is not getting old? And are you afraid to move to other position with new cheese? You have to read “Who moved my cheese?” This book brings into light some very important aspects of human fear to change things around even if their cheese is getting old or even if someone has moved it away. And I understand why those people are afraid. Guys like, Bodo Schaefer recommend to have something (ok, MONEY!) to ensure that you are safe. So unless you bought car or house in credit you are safe and can easily move to another piece of cheese. You know, I agree with them. I cannot buy house here in Lviv for money that I have, maybe some small car, but money that I have with bank interest and including my outgo is enough to live maybe 1-2 years without working at all. That is why I’m not afraid at all. And I would recommend you the same if you are still young – do not buy anything that is expensive and there should be NOWAY for credits!

Money table

Use following money table to find out if you have enough to feel free moving for better cheese; I have it automatically calculated in Excel spreadsheet:
You can put as Deposit MDeposit (e.g. 10000) -be honest
You need per day PerDay (e.g. 100) PerMonth=PerDay*30 -calculated
Per day to be happy PerDayHappy (e.g. 500) PayMonthHappy=PerDayHappy*30 -up to you
Ave. bank interest InterestRate (e.g. 0.12) MInterest=YouHave*InterestRate/12 -depends on banks
You are safe: YouAreSafe=PerMonth*6 YouHave > YouAreSafe ? (“you are more or less in good situation”) : (“Hey man, do you think about the future?”) -if you do not have enough to live half a year, something is definitely bad with your budget
You can live without need to work YouHaveEnough=PerMonth*12/InterestRate YouHave > YouHaveEnough ? (“you can stop working without impact on your life”) : (“it is too hard to reach this since needs often increase ”) months you have to wait to reach this goal:(YouHaveEnough-YouHave)/(MDeposit+MInterest)
You are free, or even rich YouHappy=PerMonthHappy*12/InterestRate YouHave > YouHappy ? (“hey! you are rich”):(“almost none reach this, since they start spending too much when they have enough”) months you have to wait to reach this goal:
(YouHappy-YouHave)/(MDeposit+MInterest)

What do I recommend to help you find out if some job is for you?

Create description of your dream’s job in couple of sentences. Then try to build questions that will help you correlate their offers to your dream.

Job of my dream

I work with newest technologies, designing and constructing architecture/technical approaches with professional team. In my team I have world level professional(s) from whom I can learn something new and really valuable, at the same time I see them and/or other team members to learn from me. All team members are open-minded passionate developers/QA/SM/PO. I’m more or less independent in my work organizing; customer trusts me, so I can do the best for them without their direct interventions. PO, representing customer, really knows requirements and goals of project and doesn’t push team to figure requirements for them. My employer is not afraid to invest money into refactoring/research and into team needs. They express respect to their employees and listen to them. They keep an eye on the project’s future and employees satisfaction, they do the best to keep employees motivated. Employees at the same time are really dedicated to help their customer/employer reach company’s goals.

Questions:

  1. What do you like about working for the X company? Why should I like it as well?
  2. What is the overall goal of the project I will be working on?
  3. Is project new? What are terms and team size?
  4. What are my duties for this project? In percents?
  5. What are the most challenging aspects of this position?
  6. What technologies will be used?
  7. Do you use recent approaches in software development?
  8. How to you measure code quality? Unit Testing? Code Coverage? BDD?
  9. Would it be possible to see piece of already written code?
  10. What methodologies are used for this project?
  11. With whom will I be working most closely? What is their professional level?
  12. Who is my supervisor? To whom would I report?
  13. Will I supervise someone?
  14. Are you interested in my professional development and how will this appear?
  15. Do you invest in refactoring/research?
  16. Do you accept initiative from your employees?
  17. Will I have many meetings per day?
  18. Is there anything else that prevents you from hiring me?

Also I was looking for some other good lists of questions. One is more general and other is awesome list of questions from stackoverflow.

Awesome questions list from stackoverflow

Here below in dark-blue is complete list of questions composed by Rob Wells on stackoverflow. This is copy-paste (!). All rights are reserved for stackoverflow and I do not pretend to be author of any part of it. Please follow this link to see original question.

Questions for development:

  1. What software development methodology do you use, e.g. Waterfall, Agile, Scrum, XP?
  2. Is training provided for the methodology being used?
  3. What parts of the software development life cycle do developers do?
  4. What is the breakdown of a developer’s day, e.g. how much time for support or troubleshooting, how much time for coding, analysing requirements, etc.?
  5. How long does your design, code and test cycle last? Less than thirty seconds, less than five minutes, less than ten minutes, etc.
  6. Do you encourage refactoring if sufficient unit tests exist?
  7. What test bench do you use?
  8. Do you have coding standards?
  9. Are the standards revisited or are they just left, as written, i.e. “carved in stone”, in 2001?
  10. Do you allow time for peer reviews of code?
  11. Can you give me an example of a code review that is done here. Are there different levels of a review, e.g. new system is handled in a day long explanation compared to a quick bug fix that is needed ASAP.
  12. Does the project use continuous integration?
  13. (If they use continuous integration) does your software build and test cleanly right now? What’s the current successful build rate?
  14. Does the project have regular regression testing?
  15. Are metrics kept for the code base? SLOC? Numbers of unit tests? Numbers of regression tests?
  16. How are conflicts resolved between testers and developers? I ask this because there have been times in the past where I see finger pointing of “Well, I interpreted it this way and he interpreted that,” enough to make me ask how is this handled.
  17. How are requests for large changes to be done quickly handled? For example, someone requests a web application that would normally take 2 weeks be done in 2 days for a prospective client that could be a big account.
  18. Do you use a software repository? (If the answer is no, walk out).
  19. What is the budget for tools?
  20. Do you offer your developers any sort of allowance to order technical books?

Questions about estimating:

  1. Do you have a standard template for estimating development effort for new work to make sure nothing is overlooked?
  2. A process for obtaining such an estimate?
  3. What percentage of contingency do you build in to your estimates?
  4. Do you allow time to revisit

Questions regarding the team:

  1. What has the team achieved so far?
  2. What has the team learnt?
  3. What aspects of the team would you like to change to improve the team?
  4. What’s the team spirit like?
  5. Where do team members generally have lunch?
  6. Does the team go out together every now and then?
  7. Do you encourage team members to give presentations to improve their abilities?
  8. Do you do the same with writing?
  9. Can I please speak informally to some of the people in the team I’ll be joining? (Useful to get beyond the management BS and get a feel for the real deal.)

Questions regarding personnel type policies:

  1. Does the company have a training policy?
  2. What were the latest courses that the company sent people on?
  3. Does the company have a mentoring policy?
  4. What kind of feedback mechanism is there for determining employee performance, e.g. how often is my work evaluated and suggestions given on where to improve?
  5. Is there a dress code? Do employees work a fixed set of hours?
  6. Is there any on-call time as part of the job?
  7. Do you encourage employees to set goals and provide incentives to meet those goals?
  8. Is self-improvement a value common to this organization?
  9. What’s your company’s Internet policy?
  10. What sites do you block? (I’ve worked at places where you can’t access various good technical sites.)
  11. Can I work irregular hours if I need to? For examle, at night, all the week’s hours in 2 days?
  12. Can I work from home?
  13. Do you have any policies against employees listening music while they work?
  14. How much work do you expect developers do outside of the normal business day?

Questions about management:
For the manager:

  1. What is your style of managing?
  2. How s/he motivates people
  3. How problems are handled (I leave that open-ended to see what sort of problem they assume–relating to those under them or those over them or issues unrelated to people at all, and then ask about whichever they didn’t cover).
  4. What the company does to help develop their managment skills
  5. What motivates them
  6. How much they work (typical hours/schedule)
  7. What accomplishment they are most proud of (I don’t specify work-related, and if they mention something besides that I ask about work as well)
  8. How they develop team cohesiveness and what they’ve been able to accomplish in that area
  9. What they see as the next big step for the team, for the company, and in dealing with projects or whatever the main mission of the group is

Then I ask them to answer the same kinds of questions for the company as a whole, explaining that I consider there’s such a thing as a company “personality” that usually emanates from the top. I ask how that has changed over the years (if they’ve been there very long).
Further questions on management:

  1. What’s your staff turnover rate?
  2. What’s the worst project you’ve ever been on here?
  3. How long does the typical hiree at my level stay with the company?
  4. How are projects categorized, e.g. changes compared to a small project compared to a big project?
  5. What kind of management is there within the company, e.g. is the development manager also the project manager or are these separate people usually?

Questions on the work environment:

  1. Can I please see my workplace?
  2. And, more specifically, can I see the desk where I will be working please?
  3. What’s the company’s policy to downloading software? (I’ve worked at places where you can download zip so it takes a week to get the help team to download the hex editor you needed yesterday.)
  4. How locked down are the PC’s? (I’ve worked at companies where the PC’s are so locked down it’s almost impossible to do any work e.g. no access to command prompt.)
  5. Do developers have admin rights on their PC’s? (Rule of thumb – The more locked down the PC, the worse the company. The real development sites I’ve worked at give all developers admin rights. They trust and empower them with corresponding rises in productivity.)
  6. What software is loaded by default on a standard developer PC? For example, can I use Eclipse or am I condemned to Notepad hell).
  7. Can I choose my own development tools?
  8. What sort of equipment do you provide to your developers? For example, are all developers given a laptop to work with, do they have access to two monitors, are they allowed to order other equipment (e.g. ergonomic keyboard)?

Miscellaneous questions:

  1. Why did the guy I’m replacing leave?
  2. How can I help you?
  3. What are your biggest needs right now?
  4. What kind of things would you want someone in this position to do?
  5. If you choose me, are there things I could read about your problem domain that would help me be effective on day one?
  6. Why the interviewer(s) work(s) there (or likes working there, or continutes to work there, etc). Their responses usually give me a good feel for the company.

Hope you liked this blog post. Looking forward to hear from you guys!


No comments


I gave up with Design Patterns in Java – I start my book

September 26, 2010 C#, Design Patterns, Java, Opinion, Personal, Success 12 comments

Yeah, title sounds not logically, but you will understand in a few why it is still relevant to this blog post.

It was and it is a good idea to…

In one of my blog posts I’ve decided to have all of the GoF Design Patterns written with Java. And idea itself is very good. Having all of the design patterns written by your own with you own examples gives you understanding of the DP that you cannot gain anywhere else plus to that if you have industrial experience of using all of them you can start think that you are guru of DP.

Process of writing my post on one of the Design Patterns looks like this: I read chapter of the GoF book on the particular DP, then I think up my own example if I do not have it already in my mind and after I’m done with some preliminary ideas I search over the internet for interesting articles on it and probably rethink some of the aspects of my example. After all of that I proceed to writing blog post and source code with Java.

Conclusion: Awesome and probably one of the best ways of learning DP is to have your own example of using it and industrial experience.

Design Patterns articles

One of the intents of having DP written in Java was to familiarize with that language. But it turns out that I did not learn much from Java (except of few things). Also few months ago I started keeping up Tuesday’s Design Pattern on the Lviv .NET User Group Page. Since it is .NET specific UG, I used to do following: 1) translate and 2) translate. In first place it is translation from English to Ukrainian and in second from Java to C#. When with item number one I have to apply some logic and rephrasing I cannot say the same about second item. I just copy code-paste code into Visual Studio and change few keywords. So what do I learn regarding of Java in this case?

I will continue learning Java, but I have to consider better way of doing it. I will also continue writing about Design Patterns, but with examples in C#.

Conclusion: Learning another programming language (Java) is really great idea, but be sure that you choose right approach of doing this.

First free e-book

On the road to Lviv I got perfect idea to start my first book. Of course this cannot be comprehensive stunning author’s book, but I have to start with something. In other words some probing book and this could be this “try it” case. I’m almost sure that there are no books about GoF Design Patterns in Ukrainian. (I suppose that there are in Russian, which can be easily understandable for most Ukrainians…)

How this book will be different?

  • It will be in Ukrainian.
  • It will NOT be a translation of GoF book in any way.
  • It will have my own unique examples.
  • It will be short and easy to understand.
  • It will be really cool kick-off book on DP for starting Developers.
  • It will be free to download.

Why do I need it?

I understand that this book might not be popular at all. But I have to start with something and plus to this it will help me familiarize with the whole process and build my confidence for future.

Also if you have some doubts about my idea I have a question for you: “Have you ever dreamt about your own book? If yes, do you have at least small book written?”

Conclusion: Never be skeptic about starting your first book. It might be a huge step to your success as anything else you are hesitating about but still dreaming about it!


12 comments